Obsidian Notes + Self-Hosted Sync
I've recently started using Obsidian Notes as a part of my daily workflow and I have to say, it's wonderful. For the unitiated: Obsidian Notes is a personal knowledge base solution that uses local plain-text Markdown files. So, basically, it's a very advanced Markdown editor, with tons of features...and its free. I had long been searching for such a product. I've tried many: EverNote, OneNote, Google Keep, Notion, Joplin and a few others. None quite met my needs: support for Markdown syntax, synchronization, mobile apps, encryption, extensibility through themes/plugins. Joplin came very close. I had been using it most recently until I decided to take the plunge and try Obsidian. I haven't looked back.
On top of those things, Obsidian has some killer features that set it apart from the rest, namely Graph View and Backlinks. Per the Obsidian docs, Graph view lets you visualize the relationships between the notes in your vault. This goes hand-in-hand with Backlinks, which can be used to find notes that reference the note your writing. This allows you to create links to notes that don't even exist yet, allowing you to write freely without worrying about structure or hierarchy. It's an amazing concept once you start to work with it.
Workflow
For my current workflow, I use the built-in Daily Notes plugin with a template to automatically create a new note every day when I get into work. Then, I make use of Beeftext combos to create a log of my day, complete with backlinks to specific items, like Users, Clients and Computers. I'll try to explain with pictures:
Pictured above, we have the Editing View and Reading View of the Obsidian note editor. The editing view shows the Markdown syntax w/ live preview turned on. I currently work in tech support and my workflow looks like this: When I receive a call, I run my Beeftext combo .nc
to insert a snippet with the current time and various fields for me to fill in as I gather information from the user. Since I create backlinks to the user, client and computer, I can add specific notes about those items at any time. For example: say a user has an accessibility need -- I ctrl+click
the backlink and a new note is generated for that user in which I can make note of that need. Also, once a backlink is created, Obsidian will auto-complete them in the future, even if the note file doesn't exist yet! Then we can use the Graph View to see a map of all the relationships between the notes and backlinks:
Sync Options
While Obsidian is free, the official sync feature will cost you $10/mo or $96/yr. But, there are free alternatives! Since Obsidian uses plain-text files that you control, you could always keep your Obsidian vault in something like Dropbox or Google Drive. You could also use Syncthing (a great tool, btw) or Git. But thanks to the Obsidian Community, there's an even better option: Self-hosted LiveSync. This community plugin works inside the Obsidian app, across all platforms (including mobile). You've just gotta have somewhere to host the database. Since self-hosting is a passion of mine, this was a no-brainer. The author of the plugin provides instructions for two server installation methods: using IBM Cloudant or with your own CouchDB server.
Self-Hosting Obsidian LiveSync
I love self-hosting. I've been doing it ever since I built my first Linux server back in the early 2000s, but that's a story for another time. Docker has made self-hosting extremely simple these past few years. The author of the LiveSync plugin provides instructions for using Docker Compose to run the CouchDB service. I initially got this running on one of my free Oracle Cloud nodes, but I've since adapted it for use in my homelab's Docker Swarm setup. Either way, it's pretty straightforward and it's been working quite well! See below for screenshots of the LiveSync plugin's configuration pages in Obsidian and the Web UI of the CouchDB instance showing notes that have been sync'ed:
Closing
Thanks to Obsidian, I really feel like I have a second brain. And with Self-hosted LiveSync, it's got built-in synchronization on all platforms, for free! I look forward to expanding my personal knowledgebase and seeing the graph view come a year from now! Don't let the Markdown requirement be a barrier to entry. It's very simple to use and once you start, you won't want to stop! Got any feedback about your note-taking experience? Let me know in the comments!
Comments