• enhance(workspace) Use sentry to track errors (docs (Private))
  • enhance(lookup) "Create New" will be first result if no exact match
  • enhance(lookup) Disallow toggle of vault selector when using "Move Note" command
  • enhance(publish) unpublished notes replaced with link to unpublished pages
  • enhance(publish) support attach option for CLI (docs)



Custom CSS for Images

Dendron allows you to extend your images by adding custom CSS properties to them. This can allow you to display an image at a specific size, make it float (text wrapping around image), add a border, or much more. Extended images work both in Preview V2 and in Publish.

Publish to GitHub Pages using Next.js

You can publish your notes using Dendron Next.js Publishing and GitHub Pages.


  • enhance(publish) support assetPrefix option with Next.js publishing
  • enhance(publish) initialize Next.js template with https protocol
  • enhance(publish) autoset sane defaults for Next.js publishing
  • enhance(pods) Markdown import to update asset links

Bug Fixes

  • fix(workspace) stop calendar from auto expanding when the last note is closed
  • fix(workspace) direct children query not filterting all results
  • fix(workspace) correctly render cross-vault note references in preview v2
  • fix(workspace) ignore lookupConfirm if dailyVault is set
  • fix(publish) exclude private vault backlinks when publishing
  • fix(markdown) highlight same file wikilinks, wildcard references, links with anchors
  • fix(publish) backlinks respect assetPrefix

House Cleaning

  • prune(publish): remove generating jekyll folder on new workspace



  • issue with 11ty publishing



  • issue with initilaize tutorial workspace from non-Dendron workspace



  • issue with initilaize template workspace from non-Dendron workspace




Improved Lookup

Lookup can match words that are out of order, with better fuzziness, and will sort by last updated in case of ties.

Dendron supports lookups by keywords separated by spaces/' ' without having to know the order where the keywords occur in the note. As example: dendron rename & rename dendron will both match note dendron.dev.design.commands.rename.

As mentioned in Details, the look up is accomplished through utilization of fusejs. You can use fusejs extended search syntax when looking up notes.

For entries that have the same score, Dendron will sort results by their last updated time. Further info on lookup syntax can be found in Finding Notes

CLI for Next.js Publishing

Dendron now has limited CLI support for Next.js Publishing. You can read about how to get started here

Leaner Extension

Bundle extension size is reduced by 50%


  • autocomplete and refactoring for users notes (docs)
  • frontmatter tags displayed similarly to regular tags when published
  • support customHeaderPath for Next.js publishing
  • support collection options for Next.js publishing
  • progress bar for refactoring

Bug Fixes

  • links at the top and bottom of note references not clickable
  • bad missing note hover message
  • tag decorators persist after text is removed
  • don't show multi-select modifier on rename



Cache rendered previews

When using preview, navigating back to a page that has already been recently visited should render more quickly with the new addition of a preview caching mechanism.


  • (workspace) add multi-select for Dendron: Move Note command
  • (workspace) add expandAll functionality to backlink view
  • (publishing) nextjs-template sidebar style improvements in published docs
  • (workspace) frontmatter tag highlighting
  • (workspace) missing tag notes are now highlighted as missing in the same way wikilinks show

Bug Fixes

  • (publishing) block anchor in list with single top level element
  • (publishing) allow a note reference of a list item without its children
  • (publishing) block anchors attached to code blocks in publishing
  • (workspace) reload index is now silent by default, unless run explicitly




User Tags

Dendron allows you to tag users in your notes. You can tag users inline like @example. They are similar to tags, except that they are meant to reference users. In a vault shared with many people, where each person can have their own user note. Or you can also use it yourself to keep track of information about people you know.


  • tag colors now show up in graph view
  • significant (+60%) improvements to workspace startup speed
  • tag color display improvements
  • progress indicators for all long running tasks
  • additional styling improvements for Next.js publishing

Bug Fixes

  • issue with "Browse Note" command for windows

House Cleaning

  • remove Dendron Markdown Preview Enhanced as recommended extension



Seed browser

Seed Browser is a new view that let's you view Seeds that are available in the Seed Registry. You can view detailed information about the seeds and download them to your workspace.

Start anchor seed-browse not found


  • improve hover message for missing notes
  • ability to set selection type to none (docs)
  • use GitHub publish to create new issues (docs)
  • nicer refactor preview
  • treeview improvements when publishing using Next.js
  • added Dendron cache to .gitignore on vault add
  • added various alias modes for insert note link command (docs)

Bug Fixes

  • backlinks properly update on frontmatter tag changes
  • slugify GitHub issue title when importing




  • support smart vault selection for new lookup
  • copy note link support for new lookup

Bug Fixes

  • unhandled error when escaping from insert link command

Breaking Changes

Vault Selection

  • The new Select Vault button introduced with Better Lookup has a changed behavior now.
    • If the button is toggled on, you will always be prompted for vault selection.
    • If the button is toggled off, Dendron will try to determine the vault from the current active editor and other contexts, and prompt when there are still ambiguities.
    • Note that this button is only visible if you have lookupConfirmVaultOnCreate set to true in dendron.yml.
    • More on this topic can be found here
  • copyNoteLink modifier button will not be trigger immediately after toggle.
    • Before this change, this button will immediately copy the link of the selected note(s) on trigger.
    • This behavior is not congruent to how the other modifiers behave, and fails to work as expected in some cases (e.g. creating new notes, or selecting multiple notes, toggling copyNoteLink, then selecting more notes).
    • For this reason, the copyNoteLink behavior will now trigger once the lookup has been confirmed.
    • More on this topic can be found here



Better Lookup by Default

Last week we announced a better lookup command, rebuild from the ground up to be faster, more stable, and easier to embed into new commands. We have now finished migrating all existing lookup features to the new commands and have switched to using it for all lookup related operations.

There shouldn't be any noticable difference in your daily workflow, but there are some breaking changes that needs to be addressed described below.


  • notes: wildcard anchors will now work at the end of a note, addresses following issue
  • notes: avoid parsing notes that are too large
  • workspace: better error message when trying to refactor notes without frontmatter
  • publishing: breadcrumbs are now clicakble

Bug Fixes

  • notes: note reference inserting title of note in preview
  • preview: horizontal line not rendering in preview
  • publishing: internal links pointing to bad url

Breaking Changes

Changes to custon keyboard shortcuts.

If you are using custom keyboard shortcuts to provide different arguments to the lookup command, these are the breaking changes that need to be addressed:

  1. All keyboard shortcuts referencing "command": "dendron.lookup" should be updated to reference "command": "dendron.lookupNote" instead.
  2. There are some changes to the arguments you can provide to the lookup command:
    • flavor argument is deprecated. Note Lookup and Schema Lookup are two separate commands now.
    • noteExistBehavior argument is deprecated.
    • filterType has been renamed to filterMiddleware, and requires an array of strings instead of a string.
    • value has been renamed to initialValue.
    • effectType has been broken down to individual arguments:
      • multiSelect and copyNoteLink.
      • copyNoteRef keyword has been deprecated.

Please note that providing an incorrect argument to the keyboard shortcut will not prevent you from using that keybinding, but the argument will not be properly passed. This will result in a different behavior than you would expect. Please make sure to update them if you are using them.

You can find a reference to all the available lookup modifiers here

House Cleaning

  • migrate all Lookup tests to NoteLookup and Schema lookup


Bug Fixes

  • copy note url command not working




Insert Note Index Command

Insert a block that lists the direct children of the current note to cursor position.

The format of the block is as follows:

## Index
- [[{ch1}|{noteName}]]

If used in a multi-vault workspace and noXVaultWikiLink is not set, the wikilinks will have a vault prefix added to avoid ambiguity.

Given the following hierarchy:

├── recipe
├── recipe.eggs
├── recipe.eggs.royale
├── recipe.eggs.deviled
├── recipe.eggs.benedict
├── recipe.eggs.florentine
├── recipe.bagel 
├── recipe.bagel.with-gravlax
├── recipe.chicken
└── recipe.chicken.curry

Running this command with the note recipe open will insert the following at cursor position:

## Index
- [[Eggs|recipe.eggs]]
- [[Bagel|recipe.bagel]]
- [[Chicken|recipe.chicken]]

Running it in the note recipe.eggs will insert the following at cursor position:

## Index
- [[Royale|recipe.eggs.royale]]
- [[Deviled|recipe.eggs.deviled]]
- [[Benedict|recipe.eggs.benedict]]
- [[Florentine|recipe.eggs.florentine]]


  • resolve wikilinks with siteUrl when using the Markdown Publish Pod (docs)

Bug Fixes

  • escaping from lookup can cause next lookup to be run twice



General Release of the Calendar Widget

The Calendar View is no longer hidden behind a feature flag and is now ready for general usage.

Validation and autocomplete for dendron.yml

Dendron can provide validation when you edit the raw yaml using theConfigure (yaml) Command (Private). In order to do so, you must have the redhat.vscode-yaml extension installed (this is a recommended extension for Dendron) The validator provides autocomplete, documentation & warnings when editing dendron.yml. Here's a few examples of what it looks like:

Hover over values to see documentation

Hover over values to see documentation

Autocomplete existing values

Autocomplete existing values

Validate existing values

Validate existing values


  • bring Lookup Note to feature parity with existing lookup
    • add schema suggestions
    • show current Dendron version
    • apply journal title override
  • Colored tags in the tree view (docs)
  • Tags inherit color of ancestors (docs)
  • Add leading slash to Markdown links during export

Bug Fixes

  • calendar: errors when switching between month/year
  • copy note link copies footnotes as anchors
  • NoteLookup gets old selection in some cases
  • missing tutorial warning when initializing a blank workspace
  • direct child filter can miss results




GitHub Publish Pod

  • The GitHub Issue Publish Pod lets you update the status, milestone, assignees and labels of issues in your GitHub repository that have previously been imported into Dendron. It also supports creating a new issue and a discussion in GitHub from a note authored in Dendron.

Custom Colors for Tags

Rename Header Command


  • automatically resolve conflicting keybinding caused by Vim extension

Bug Fixes

  • lookup was not setting splitType when executed with a custom keybinding


  • we removed journal.firstDayOfWeek as a property from the web ui calendar. see details here

House Cleaning



Bug Fixes

  • fix missing dependency in Dendron CLI



Frontmatter Tags

End anchor pretty-tags not found

Seed Commands

Seed Commands now available within the extension. You can add seeds to your workspace with the Dendron: Seed Add command, which was previously only available in the CLI.

Add a seed (Private) to your current workspace.

Better Lookup

We are splitting up the Lookup command into two separate commands: Lookup Note and Lookup Schema. There's been a lot of confusion that has come from overloading the Lookup command which is now deprecated and will removed in a future release.

Besides for the split, Lookup Note should be significantly faster for large workspaces. Previously you might have noticed a lag when creating a new note in these cases. It also comes with a the new vaultSelection modifier that lets you prompt for a vault when creating a new note.


  • Google Docs Pod will now prompt users to confirm overwriting of a document before running with the confirmOverwrite configuration.
  • When choosing between vaults (for example, picking which vault to put a note in), the vaults will now show by the vault name instead of the vault path.

Bug Fixes

  • Fixed an issue where wikilinks were not getting highlighted
  • Fixed an issue with the doctor command's regenerate note ID feature
  • Fixed broken links in the extension readme
  • Add Vault command in the CLI will now properly modify your workspace file




  • Lots of graph improvements
    • Labels are now hidden in large graphs
    • Better layout for large graphs
    • Loading indicators when starting graph
    • Better error messages
    • Better configuration toggling

Bug Fixes

  • Inconsistent cross-vault link behavior has been fixed
  • Better behavior for hashtags with periods at the end

House Cleaning

  • windows integration tests are now active


Bug Fixes

  • Issue with publishing from plugin




Deprecate Markdown Preview Enhanced

Dendron Markdown Preview Enhanced is no longer required to use Dendron.

By default, all new users will get Preview as the default. Existing users that have not turned on V2 will see no change but can and are encourage to switch to preview v2 by following the instructions here. Dendron Markdown Preview Enhanced should now be considered deprecated and subject to removal later this year.


  • control graph zoom sensiitivity



Google Doc Import Pod

The Google Docs Import Pod imports contents of a Google document to a specified hierarchy in your selected vault as a note. It can parse all the headings, links, lists, tables, user-mentions and images present in the document. The images are downloaded in the assets folder and are referenced from the note. User mentions are interpreted as a user tag and parsed as @firstname-lastname The import config has additional options to import comments in the doc.


  • selection modiifier to NoteLookup Command
  • delay frontmatter warning while user is typing

Bug Fixes

  • autocomplete takes a long time



Non-Blocking Workspace initialization

When you open a Dendron workspace, you might have noticed that you needed to wait for the workspace to initialize before VS Code itself became usable. This is because even though Dendron uses a local server to index your files, this server ran on the same process as VS Code.

We have offloaded the local server to a separate process so that all engine operations (eg. indexing) no longer affect the main VS Code process.

What this means in practice is that you can use VS Code immediately when the workspace is open. It also means you'll notice better responsiveness across all engine related features (eg. refactoring, preview, etc.)


  • find missing links in entire workspace (docs)
  • hide the filter view in the note graph
  • warn against missing frontmatter (docs)
  • hashtag autocomplete improvements (docs)
  • doctor command to automatically fix the frontmatter (docs)

Bug Fixes

  • hashtag links duplicate following text
  • issues with parsing wikilinks with unicode and special symbols

House Cleaning



  • reduce size of Dendron CLI




Custom Graph Syliing

Dendron supports custom styling of schema and note graphs. Styling follows the Cytoscape.js format, which is CSS-like with a couple of differences. Full Cytoscape.js styling documentation can be found here.

Built-In Note Templates

This experimental feature will allow you to pull down a set of templates for commonly used scenarios. The template selection is currently limited, but we will be expanding on the template set in the future.

You can also pick from a set of built-in templates that contain a set of commonly used note styles to help you get started. These templates can be pulled down with the seeds mechanism. The seed containing templates is called dendron.templates, substitute dendron.dendron-site for dendron.templates in the example below

Adding a seed to an existing workspace

In this example, dendron.dendron-site is the name of the seed. Replace this string with your desired seed.

  1. Open the command palette and run Add Seed to Workspace. In the dropdown, select dendron.dendron-site
  2. Wait for the seed to be imported. After the import, run Reload Index for Dendron to index the seed.


Adding a seed to an existing workspace

In this example, dendron.dendron-site is the name of the seed. Replace this string with your desired seed.

  1. Navigate to your current workspace
cd {workspace}
  1. Add the seed
dendron seed add dendron.dendron-site
  1. Open the workspace. You should find your workspace initialized with the contents from wiki.dendron.so.

  2. (Clean up)

dendron seed remove dendron.dendron-site

We are continually working to expand the types of templates available in the dendron.template seed.

Template Variables

Work In Progress 🚧

This section is actively being worked on and may be incomplete.

Date variables currently does not work in version 0.79 and later releases.

Dendron supports various template variables.

  • For inserting the current date and time:
    • CURRENT_YEAR: The current year
    • CURRENT_MONTH: The month as two digits (example '02')
    • CURRENT_DAY: The day of the month as two digits (example '08')
    • CURRENT_HOUR: The current hour in 24-hour clock format
    • CURRENT_MINUTE: The current minute as two digits
    • CURRENT_SECOND: The current second as two digits


  • template
    Today is {{ CURRENT_YEAR }}.{{ CURRENT_MONTH }}.{{ CURRENT_DAY }},
  • output
    Today is 2022.01.04


  • show preview will no longer ask you to load

Bug Fixes

  • Dendron not updating journal behavior based on journal config in dendron.yml


House Cleaning




Candidate backlinks are plain text words that match the name of the current note, which can potentially be converted into a (linked) backlink.

Smart hierarchy selection when creating notes with multiple vaults

The behavior around selecting which vault to create a note in has been improved for multi-vault workspaces. If the new note matches an existing hierarchy in a different vault, a prompt will come up with vault suggestions for your new note.

Vault Location when Creating a Note

When creating a note in lookup, Dendron will try to create your note in the correct vault. By default, it will place the note into the same vault as the currently opened note. But if it detects that the new note matches an existing hierarchy in a different vault, you will get prompted to pick the destination vault:

Prompt for Vault Selection Each Time


This setting is scheduled for deprecation 📆

Use confirmVaultOnCreate instead.

With this set, you will be prompted to select the vault location each time you create a note when you have multiple vaults in your workspace.

To enable, add lookupConfirmVaultOnCreate: true in the Dendron configuration. Instructions to do so below.

  1. Dendron: Configure (yaml)

  2. add lookupConfirmVaultOnCreate: true so your configuration looks like the following:
version: 0
lookupConfirmVaultOnCreate: true

Moving Notes Between Vaults

This can be done with the Move Note command.

If looking to move a note within a hierarchy in a local vault, or just to rename the note, use Rename Note

  • shortcuts: none

Move a note between vaults when in a Multi Vault workspace, and update all backlinks.

You can also move a note from the explorer, and all of the backlinks to that note will be updated automatically:

  • Right Click on the note
  • Select Dendron: Move Note

NOTE: Dendron will not allow you to move a note to a note that already exists

Hashtag support

Dendron supports adding tags to your notes. Tags can be added either inline as a hashtag (eg. #foo) or in the Frontmatter.

Preview V2 Enhancements

Almost at feature parity with current preview. You can now toggle it to be the default preview by setting dev.enablePreviewV2 to true in your dendron.yml

The Dendron Preview gives you a rich HTML preview for your notes.


  • sort completions by vault names
  • Insert Note will now resolve snippet variables (docs)
  • custom syntax highlighting for wiki links (docs)
  • replace prefix with value of original match when running refactor command

Bug Fixes

  • updated timestamp in frontmatter not updating
  • bad link in tutorial workspace

House Cleaning

  • add analytics on uninstall