Getting Started with Templify Extension

Templify Extension allows you to create templates (canned responses, canned replies, snippets) for frequently used messages and apply them on any web page. It works everywhere you write on the web – LinkedIn, Gmail, Facebook, WhatsApp, or any other web page, platform, or service.

To get started, please follow these three simple steps:

1. Install the extension and sign in
If you have not installed it yet, please visit the web store and follow the installation instructions. Open the extension and sign in with the account of your choice.

2. Create your preferred template(s)
Open the extension and click on the 'Create Template' button. Enter the template title and source, and save the template.

3. Apply the template(s) whenever you need
To apply a template, click on any editable text field on the web page (put the cursor into), then open the extension and click on the 'Apply' button for the template of your choice.

Simply repeat steps (2) and (3) whenever you need to use a template – yes, that's easy! 🚀

Keyboard Usage (recommended)

Templify Extension can be controlled with keyboard keys only, without any cursor moves or interruptions – it perfectly enhances the typing experience. After a few tries, using keyboard keys will become your favorite option!

To apply any template using keyboard keys only:

1. Press 'Ctrl+Shift+Space' to open the extension (or your custom shortcut if you changed the default one)

2. Type to filter the list of templates if you want to

3. Navigate the templates with the 'up' and 'down' arrow keys

4. Apply the selected template by pressing the 'Enter' key. (In case of resolving a template, use the 'Tab' key to speed up the navigation of placeholders).

Template Smart Syntax

Smart syntax is a set of rules and placeholders that extend the functionality of templates. Use Templify Extension's Smart Syntax to create personalized templates, template compositions, and more to increase response rates and loyalty.

To define a placeholder in your template source, use two curly braces and any name of your choice. For example, template with a placeholder for the meeting time might look like:

Hey, let's schedule a meeting {{when}}!

Templify Extension follows these rules for each placeholder in a template:

1. If there is a template with the same name as the placeholder's name, it will return the template source instead of the placeholder. This allows for reusing templates and creating template compositions.

2. If there is a system resolver for the placeholder's name, it will return the system resolver evaluation result. This allows for using web page content in templates or even triggering web page actions. See the list of system resolvers.

3. If none of the above applies, Templify Extension will suggest manually resolving the placeholder. This allows for creating highly customizable and dynamic templates by entering data into user-defined custom placeholders.

Placeholders can be have an optional parameter followed after the placeholder's name and a colon. The parameter is passed to the system resolver or used as the default value when the placeholder is resolved manually. For example, template with a default time for the meeting might look like:

Hey, let's schedule a meeting {{when:tomorrow}}!

Templates Compositions

It's efficient to create commonly used templates, such as your personal or company signature or greeting, and use them in daily messaging. Even though you can apply template one after another into the same text field, sometimes it is more natural to reuse another template directly from the template's source.

To refer another template use its name as a placeholder name, for example, let's assume you've already created template with name 'personal.signature' and now you can reuse it as following:

Hey, let's schedule a meeting!
{{personal.signature}}

Every included template follows Smart Syntax rules – this means you can use placeholders without limits and create powerful and functional templates compositions.

Please note! Any circular template reference (templateA > templateN > templateA) is resolved with empty string; To use template name as placeholder, name template accordingly to placeholders naming rules;

System Resolvers

System resolvers run system functions and return the result back into the template. Inserting web page content makes templates truly dynamic and takes messaging automation to the next level. You can use system resolvers to manipulate web pages and their data.

There are dozens of use cases, but the most common is using the user/company name from a web page:

Hey {{text:.userNameElement}},
let's schedule a meeting!
{{personal.signature}}

When applied, the text resolver finds an element on the web page by the '.userNameElement' CSS selector and returns its text value.

List of available system resolvers:

  • {{text:selector}} – returns the web page element's text value. The selector parameter is used to specify the element (either a CSS selector or XPath expression ). When no selector is passed, the value of the active element (usually a text field) is returned
  • More system resolvers will be added in the future.

Custom Placeholders

Dynamic templates that perfectly fit your custom needs and scenarios – this is where Templify Extension shines!

Create a custom placeholder with a name of your choice and fill it in when the template is applied (the parameter for the placeholder is optional and can be used to set a default value). For example:

Hey {{username}},
let's schedule a meeting {{when:tomorrow}}!!
{{personal.signature}}

When applied, resolve placeholders by filling required data.

Template Groups

Templify tries to maintain a flat template structure, providing a simple and consistent browsing experience.

The most natural way to group templates is by naming them accordingly. This way, you always know which group a template belongs to and can easily change its group by renaming it. To group two or more templates, name them with the same prefix(group name) followed by a dot.

For example, templates with the names 'personal.greeting' and 'personal.meeting' are grouped into the 'personal' group.

Please note that groups are always one level deep, even if templates have multiple common naming parts.