I've been using Obsidian for the past few years and I feel I've settled into something that works well for me. I wanted to share in hopes that it may be helpful to others.
Overall Philosophy
- I try to maintain data portability so that I can move my system across different apps and also write scripts that work on pure text files.
- I try to keep it text-centric with minimal and organic structure.
- I often don't go back and "fix things" so I like things and write scripts that can gracefully adapt.
Organizational Structure
My organizational structure is to use a single vault with a few folders, as flat as I can keep them:
- Common - The everything bucket (I have ~800 files)
- Daily - Subdirectories of years with one file per day (goes back irregularly to 2004)
- Notes - Notes from meetings, lectures, etc. with subdirectories if it's a long series of notes for example an entire series of lectures
- People - One note per person or organization that I sync with Contacts via an AppleScript
- Sys - Subdirectory for templates and attachments
- Work - My work output such as articles or speeches
I organize topically through tags. As opposed to MOCs, I find tags to be better suited to my organic approach. I tag files as I'm creating or updating them. I try to stick to a few key tags, but I'm ok with adding new ones as I think of them. Every so often, I try to clean up tags using the Tag Wrangler plugin which helps rename and merge tags.
I try to keep each file reasonably focused so that they are more Zettelkasten-y but I have to admit I have quite a few that have become quite large. I'm looking at you "vim" file. I do try to break apart, merge, and prune files as I'm able. But I don't obsess over it.
The only properties I use are source and alias. I use them sparingly because IMO properties feel odd.
Day-to-Day Use
I start each day with a daily note (using the Daily notes built-in plugin) with a few key header sections that are automatically populated via a daily template that I maintain aggressively (using the Templater plugin):
- Journal - One or two sentences typically summarizing the day.
- Be Intentional - A sentence or two on how I want the day to go and something to be grateful about.
- Routines - Checkbox items that I do daily/weekly/etc. that if I don't get done that day are marked as "skipped". I use Templater to conditionally add items that are only on certain days.
- Currently Working On... - Checkboxes for my current projects so I make a little progress every day. In theory.
- Currently Reading and Watching... - Checkboxes so I remember what I'm reading and watching.
- Tasks - Checkbox items that roll forward or to my Task Queue if I don't get them done that day.
I also add sections for meetings or conversations I have as well as anything else I might need to track that day. Sometimes, it'll be scraps of info that I don't think need a full file such as output from a brew update, a quick Tweet I want to write in an editor first, etc. If it becomes bigger (i.e. this article started as a subsection but quickly grew quite large), I'll extract the section into its own file and reference it in the daily note. I often make a backlink to the daily note in the new file as well.
In addition to creating files from extracting from my daily note, I also often create files for things like quotes, tips, interesting articles, etc. These are typically in my Commonplace folder.
If I'm creating something intended to be an article, speech, story, report, or other work output, I'll keep it in the Work folder. The folder is a combination of completed and work-in-progress files. If they're in progress, I may or may not have them in the "Currently Working On..." section of my daily template.
Plugins and Hotkeys
Plugins are one of the most amazing parts of Obsidian. That said, I try to minimize the number of plugins I use because they add complexity and slow things down, especially at start time. The plugins I've settled with are:
- Calendar - Very nice to be able to quickly scan and jump to daily notes.
- Dataview - I don't really use this much anymore as I've found it's easier on my system to use Templater and create static views, updating as needed. (2024-10-14: Mostly disabled)
- Prettier Format - I love consistent formatting. (2024-10-14: Replaced with a Templater script)
- Sort & Permute Lines - I sort like a madman. (2024-10-14: Replaced with a Templater script)
- Tag Wrangler - Obsidian should build in better tag management imo but until then, this helps a lot.
- Task Processor - My own plugin to help with my day-to-day processing of my daily notes. (2024-10-14: Replaced with a Templater script)
- Templater - I don't have all that many templates but I do also use this for adhoc JavaScript in files.
I do have a lot of custom hotkeys that are a weird mashup of Mac-centric keys for things like switching tabs and IDE-centric keys for things like editing.
Hotkeys
Sidebar View
| Command | Hotkey |
|---|---|
| Files: Show file explorer | cmd-shift-e |
| Tags: Show tags | cmd-shift-g |
| Search: Search in all files | cmd-shift-f |
| Toggle left sidebar | cmd-shift-9 |
| Toggle right sidebar | cmd-shift-0 |
Main View
| Command | Hotkey |
|---|---|
| Navigate back | cmd-[ |
| Navigate forward | cmd-] |
| Daily Notes: Open today's note | cmd-shift-t |
| Go to next tab | cmd-shift-] |
| Go to previous tab | cmd-shift-[ |
| Quick switcher | cmd-p |
| Command palette | cmd-shift-p |
Manage files
| Command | Hotkey |
|---|---|
| Delete current file | cmd-shift-d |
| Star file | cmd-shift-s |
| Rename file | cmd-shift-r |
| Move file | cmd-shift-m |
Editing
| Command | Hotkey |
|---|---|
| Move line up | opt-up |
| Move line down | opt-down |
| Delete paragraph | cmd-shift-k |
| Heading 1 | cmd-opt-1 |
| Heading 2 | cmd-opt-2 |
| Heading 3 | cmd-opt-3 |