This is my Best Current Practices for Personal Knowledge Management file management.
There are at least three different places you could "name" your file. (1) In a metadata header like
## Metadata, (2) in the filename like
vault/filename.md, and (3) in the h1 header like
The only file name that has to exist is the filename itself.
You don't know how a document will evolve over time and you want to be able to easily break apart, break down, and merge documents. Being able to change the "name" of the document in a single place is invaluable.
(If you really want a h1 header or a metadata header, you can using tools to inject the filename where ever else you want it. You can also use tools to turn the title into a slug, etc.)
Frontmatter lets you add structured data to your note. It's almost like the document is now self-aware. It knows what it is. This will make it much easier for tools to read your document and know how to process it. ^b74587
Be as hands off as you can be. Avoid bike-shedding by delegating decisions.
Prettier is a formatter that does that. Call
prettier --write on your whole Personal Knowledge Management and move on.
You never know when you will rename a file. Additionally, in a particular context, you might know that want to use a particular alias no matter what the filename is. For example, in a particular context, you might know you want to always use 'json' to refer to your note
vault/json.md. You can guarantee this by creating and referencing a 'json' alias and then referring to it via
\[\[json|json\]\]. If you change the filename to, e.g.,
vault/json-intro.md, it will become
\[\[json-intro|json\]\], meaning 'json' still denotes the note. Lastly, you can still just never use the alias. It will always appear after the filename in the note-picker UI. So this approach has negligible downside and some convenient upsides.
Here's an example to demonstrate. Assume the file is