PluginCommunity Plugin

Templater

A powerful template engine with dynamic dates, prompts, and JavaScript for automating note creation.

by SilentVoidTemplating

SilentVoid is credited as the original plugin creator. Setup notes, fit assessments, and cautions below are Obsidian Mate editorial guidance. How we review resources

productivityautomationgetting startedwritingtemplate

Overview

Templater replaces Obsidian's basic core Templates with a full templating engine. It can insert dynamic dates, prompt you for input, run JavaScript, pull in the current file's metadata, and even trigger commands automatically when a note is created. If you find yourself typing the same boilerplate over and over, Templater eliminates it.

Key Features

How to Install Templater

  1. 1Open Settings, then Community plugins and disable Restricted mode.
  2. 2Click Browse, search for "Templater", then Install and Enable.
  3. 3Open the Templater settings tab and set your template folder location.
  4. 4Create a template note using <% %> command syntax.
  5. 5Insert it with the "Templater: Open insert template modal" command.

How to Use Templater

Templater commands are written between <% and %> tags. For example, <% tp.date.now("YYYY-MM-DD") %> inserts today's date in a specific format.

You can assign templates to folders so that any new note created there is automatically populated: perfect for daily notes, meeting notes, or book notes.

When Templater Is Worth Using

Choose Templater when a template must calculate values, ask questions, rename or move a file, or run logic at note creation time. Obsidian's core Templates plugin is the better fit for static boilerplate with simple date and time variables. Keeping static templates on the core plugin avoids unnecessary syntax and makes the vault easier to understand.

Example: Create a Dated Meeting Note

Set a templates folder, save the example there, and insert it through the command palette. The first command uses the current file title and the second formats the current date. Once it works, assign it to a Meetings folder if every new note there should receive this structure.

Templater
---
title: "<% tp.file.title %>"
date: <% tp.date.now("YYYY-MM-DD") %>
tags:
  - meeting
---

# <% tp.file.title %>

## Decisions

## Action items
- [ ] 

Compatibility and Safety

  • Every command must open with <% and close with %>; malformed delimiters often cause a template to be inserted as plain text.
  • User scripts and system-command functions run code. Review third-party scripts and never pass untrusted note content into shell commands.
  • The official documentation says user functions are unavailable on Obsidian mobile. Use supported internal functions when cross-device behavior matters.
  • Test automatic folder templates in a temporary folder before applying them broadly.

Details

GitHub stars
6k+
Platforms
Desktop, Mobile
License
GPL-3.0

Frequently Asked Questions

How is Templater different from the core Templates plugin?

Core Templates only does simple {{date}} substitution. Templater adds custom date formats, user prompts, JavaScript, and automatic template application: it is a full engine rather than a text snippet tool.

Do I need to know JavaScript to use Templater?

No. Many powerful templates use only the built-in tp.date and tp.file commands. JavaScript is optional for advanced automation.

Sources and Documentation

This guide was checked against the creator's repository and primary documentation.

Related Obsidian Plugins

Related Guides

Explore more Obsidian resources

Discover more plugins, themes, templates, and starter vaults to build your perfect Obsidian setup.