0.2.X
0.29.2
Features
Experimental Nunjuck Templates
Extremely powerful templating capabilities with nunjuck templates
Enhancements
- better multi-vault defaults
- instead of keeping remote vaults under a special
repos
folder, you can now initialize them where ever you want
- instead of keeping remote vaults under a special
- better git defaults with new vaults
Bug Fixes
- support turning off pretty refs for Dendron preview (docs)
0.29.1
Enhancements
Bug Fixes
- use builtin clipboard manager
- private wiki links render errors on published page
House Cleaning
- issue labeling automation
- remove legacy publishing commands (BuildPod & Publish)
0.28.1
Features
Managed Publishing (Early Preview)
The initial release comes with the ability to publish a Dendron workspace under {username}.dendron.wiki. Dendron takes care of configuring your domain and building your site.
After you connect your GitHub repo with Dendron, we'll kick off the initial publication. Every subsequent time you push to your repo, Dendron will automatically build your site with the latest changes.
At launch, we are supporting publishing from a connected GitHub repo. Instructions to get started are here
Enhancements
- show last modified time for published sites (docs)
- add option to configure human readable ts formatting (docs)
- smaller downloads when using publishing commands for the first time
- much faster publishing commands
- frontmatter can now be folded
Bug Fixes
- 11ty build issues
- Dendron
move note
command can fail when parents are stubs - preview can get out of sync with Dendron
House Cleaning
- dendron monorepo is now on yarn
- this results in 4x faster initial builds and 6x smaller bundle sizes when developing
- dendron-11ty is now merged into the dendron monorepo
If you currently have Dendron checked out, you can use the following instructions to migrate
# get latest version
git pull
npm install -g yarn
# remove old node_modules
./bootstrap/scripts/cleanup.sh
yarn bootstrap:bootstrap
yarn bootstrap:build
0.27.2
Features
- diagnostics report (docs)
Summary
Copy last 3000 lines of all logs and config to clipboard. Use when submitting an issue to Dendron
Keybindings
none
Details
Diagnostics report generates a new note with the following information:
- workspace type
- current dendron version
- previous workspace version
- previous global version
- extension install status
- contents of
dendron.yml
- contents of
dendron.code-workspace
- last 3000 lines of logs from client and server
Enhancements
- add path customization to build-site (docs)
- Add default description option to Dendron config (docs)
- add config to publish multi-vault when adding vault (docs)
Bug Fixes
- build-site doesn't overwrite STAGE environment
- do not delete text when extracting non-vault text
- add new vaults to newline in .gitignore
0.27.1
Bug Fixes
- server close error when building website for production
0.26.1
Features
- move notes between vaults using the move note command (docs)
Enhancements
- nicer 403 page on unpublished pages (docs)
Bug Fixes
- issue with daily journal notes not getting pretty titles
- ctrl hover over images will create a note
- when removing a note with empty parents, clean up empty parents
0.25.3
Features
Enhancements
- use list of vaults when resolving duplicate notes (docs)
- go to definition now works for
![[refs]]
- Copy Note Link now updates alias to header value when copying header
Bug Fix
- grammar issue with unpublished page notification
House Cleaning
- remove
sync_vault
as a step when building Dendron for the first time
0.25.2
Bug Fix
- issue with new vaults not having welcome note
0.25.1
Bug Fix
- issue with md outline not showing
0.24.2
Features
Site Build and Preview built-in to extension
You can now publish and build your notes without going to the command line (docs)
Enhancements
- show progress bar when syncing graph
- show progress bar when installing node modules
- useFMTitle set to true by default
- add
.gitignore
to newly created workspace - Copy Note Url uses
siteUrl
as value for noteRef
Bug Fixes
- fix issues with nav capitalization
- fix dup items in nav
- windows site preview not cleaning up child processes
- fix note graph errors
Docs
- revamped publishing docs
House Cleaning
- Jekyll based publishing is now deprecated
- dendron.copyNoteUrlRoot deprecated for
siteUrl
0.24.1
Features
Enhancements
- enable pass dict to config (ccbc017)
- use enhanced filter when creating 403 links (65afe8c)
- custom header support (docs)
- Google Analytics support (docs)
- Multi Vault Edit on GitHub
Bug Fixes
- fix multi-vault breadcrump null issue
- fix windows build for site
0.23.2
Features
Enhancements
- better 403 page (docs)
- spurious error message if user doesn't create note from not selecting a vault
- better default journal note titles
Bug Fixes
- issue publishing with subdomain
- some queries not being returned in multi-vault settings
- issue with noteRef mangling when using doctor
House Cleaning
- update on date format for journal and scratch notes to use Luxon style formatting
0.23.1
- Dendron Markdown Preview: 0.10.18
- Dendron 11ty: 1.23.6
Features
Updated Note Ref Syntax
You can now do references to notes using ![[note]]
instead of ((ref: [[note]]))
syntax. To reference a header, use ![[note#foo]]
. This changes makes our note ref syntax more consistent with our wiki link syntax.
Note that the new ref syntax expects a sluggified header. This is done automatically when you use the updated copy note ref command.
This change makes it possible to create a ref to a header with special characters.
The old syntax ref syntax will still work but should now be considered deprecated. We will release a doctor
command to help you auto-upgrade from the old syntax to the new syntax in the coming week.
Frontmatter Variable Substitution
It is now possible to use variables defined in your note frontmatter inside your note. The syntax is {{fm.VAR_NAME}}
where VAR_NAME
is the name of your variable. The fm
designates that you want to use a frontmatter variable.
Enhancements
nav_exclude
property excludes from nav sider and table of contents (docs)- copy note ref command will use the new note ref syntax
- footnote support in preview and when publishing (docs)
Bug Fixes
- spaces in wiki link not rendering in preview
0.22.2
Enhancements
- better fuzzy search for lookup
- publishing v2 enhancements
Bug Fixes
- Markdown preview delay in showing newly created notes
buildSiteV2
not connect to running workspace
0.22.1
Features
- Collections support for 11ty
- publish blog like archives using Dendron
- CLI Based Doctor (docs)
- run various tests to make your notes are healthy for the new year
- use frontmatter as title when publishing and in the preview (docs)
Enhancements
- additional metadata tags for published pages
- support
noindex
option (docs) - add anchor links to headers
- use note title for page title
- support nav_exclude option
- support overriding output in
buildSiteV2
command - don't throw error if no syntax highlighter available for code block
Bug Fixes
- issue connecting to open workspace using CLI
- nav bar when publishing multiple hierarchies will show wrong expansion options
0.21.2
Enhancements
- build-site command can connect to current running workspace (docs)
- support inline math when publishing
- support block math when publishing
- support rendering gfm inside note reference when publishing
- support anchor headings when publishing
- support relative links when publishing
Bug Fixes
- issue with displaying math in preview
House Cleaning
- the code highlighter has been changed from
prismjs
tohighligher.js
0.21.1
Enhancements
- add seo tags (docs)
- enable edit on GitHub link (docs)
- migrate all Jekyll
_config.yml
settings todendron.yml
Bug Fixes
- build-site errors when building from vaults without
asset folder
- build-site error on certain operating systems
- build-site error on node version != 12
Docs
- dendron.so is now published using the new 11ty framework
- add publishing to GitHub guide using GitHub Actions
0.20.2
Features
Publishing For Multi Vault
Publishing
You can publish your notes from a multi-vault workspace just as you would from a single vault workspace.
We have added a new configuration, duplicateNoteBehavior
, which controls how Dendron handles duplicate notes across multiple vaults.
Enhancements
- creating engine via cli also initializes meta files (d72f097)(docs)
- remove GitHub light theme from Dendron bundle (33d5708)
- support note refs for multi-vault
- support relative links in Dendron preview (docs)
- further speed enhancements to publishing using 11ty resulting in another 5x improvement
- configure writeStubs from
dendron.yml
Bug Fixes
- refactor hierarchy miss self referential links (00b385d)
- reduce frequency of
engine not connecting
error when launching Dendron preview
House Cleaning
- writeStubs is set to
true
by default (or when not set) when publishing using 11ty
0.20.1
Publishing V2 (preview)
We've re-build publishing for Dendron from the ground up to be faster, better, and easier to use.
Besides for schemas, publishing has consistently been one of the hardest to use features in Dendron. Dendron currently publishes using Jekyll using our own template. While this has served us well initially, slow compile times for large sites and difficulty of getting started has made it a growing pain point.
To address this, we've migrated our publishing stack to 11ty, a super fast javascript based static generator. This means much faster, and perhaps more importantly, easier publishing.
There's still some work left to integrate publishing into the Dendron plugin - meanwhile, you can take the new publishing workflow for a spin using the Dendron CLI
In order to to use the 11ty based publishing, initialize your workspace with the following commands.
npm init -y
npm install @dendronhq/dendron-cli@latest
npm install @dendronhq/dendron-11ty@latest
After you have your dependencies installed, build your your site using the following command.
npx dendron-cli buildSiteV2 --wsRoot . --stage dev --serve
This will both compile your site locally and make it available at localhost:8080
for instant preview. When building your site locally, the pages will be build to {wsRoot}/build/site
.
When you are ready to publish to github, make sure to change the stage to prod
.
npx dendron-cli buildSiteV2 --wsRoot . --stage prod
This will build your site to the path specified by siteRootDir in dendron.yml
.
Benchmarks
Publishing V2 is ~10x faster than Jekyll based publishing for sites with +100 pages. For comparison, below is the compilation difference between building the Dendron site using 11ty vs Jekyll.
- 11ty: 24.45s
- Jekyll: 220.33s
There are additional optimizations still on the table that will further drive down he compilation time by another order of magnitude for future releases.
Gaps
11ty publishing is currently not at full feature parity with Jekyll publishing. Notably, the following features are missing:
- setting a custom color theme
edit on GitHub
linksjekyll-seo
functionality- mathjax
Migration
All values that used to be written into _config.yml
will now be moved into dendron.yml
. You can see the currently supported configuration values here: https://github.com/dendronhq/dendron/blob/master/packages/common-all/src/types/typesv2.ts
If you currently have a Jekyll based Dendron page, note that the following settings have changed:
- the
url
property from_config.yml
is nowsiteUrl
indendron.yml
- favicon is now controlled by
siteFaviconPath
indendron.yml
and is a path relative to your workspace root CNAME
is now controlled bygithubCname
property indendron.yml
Sample dendron.yml config
- publishing without a cname
version: 1
vaults:
- fsPath: vault
site:
copyAssets: true
siteHierarchies:
- dendron
siteRootDir: docs
siteUrl: "kevinslin.github.io/dendron-11ty-test"
usePrettyRefs: true
- using custom cname
version: 1
vaults:
- fsPath: vault
site:
copyAssets: true
siteHierarchies:
- dendron
siteRootDir: docs
usePrettyRefs: true
siteUrl: "11ty.dendron.so"
githubCname: "11ty.dendron.so"
Sample repo
CLI Command Reference
dendron-cli buildSiteV2
build notes for publication using 11ty
Options:
--version Show version number [boolean]
--help Show help [boolean]
--wsRoot location of workspace [required]
--vaults location of vault [array]
--serve serve over local http server [boolean] [default: false]
--stage serve over local http server