I have been looking for a way to get my notes synced across all devices to create a portable knowledge base. There are many closed source methods of doing so, but I wanted something that is future proof, open, and can be portable. While I know services like OneNote and Evernote exist, I want to have my data in my own hands.
After much seeking, I have found the system I will be using for potentially the rest of my life.
Overview and requirements #
I need a way to frictionlessly take in information, organize it, and find it in the future so that I can pull it in and work with it, apply it, and build upon it. I need this system to stand the test of time, and I need it to be something I actually use - in the past there were “good ideas” for systems, but if you don’t execute on them, or abandon them altogether, then they are pointless.
Org mode previously got me 80% of the way there, but because I couldn’t easily use it on mobile meant that I missed a lot of things that I would have captured in a more robust system.
The Components #
Markdown #
If you have read my stuff before, you will know I have been an avid user of org mode in emacs. I wrote my debut book in org mode, with quick exports to LaTex (and then automagically to PDF).
I loved it and there is plenty that org can do; I think that if you are wanting a system that “just works” (albeit with a massive learning curve) look no further than org-mode.
I had a couple gripes, however.
First - there is really no easy way to sync org files to a phone, so I had files here and there, but no way to really make sure I was up to date with my inbox everywhere. This became a massive issue as it caused me to miss out on tons of actions/notes/ideas because I hadn’t taken them in and processed them properly.
Second - the UI isn’t there for portable devices. Sure, you can use Termux, but that is not the most fun thing to use with two thumbs. I know that Orgzly exists, but I could never get into it.
Third - All of my blog posts, documentation, etc is almost always exported to markdown as it is - and that export is not the cleanest with org-export. More often than not, I have to go in and manually edit the post, whereas if I wrote it in plain markdown, I would skip this step entirely. This potentially in and of itself saves hours every month in creating content.
As much as I may want org to be a universal, .md is the gold standard on the internet and is used in most places (think READMEs in github, Hugo sites, et al.). I might as well reserve myself to this.
.org and .md (and .norg for those using Neorg) are text files and futureproof, so all are solid for this usecase.
The final nail in my switching coffin was that I have migrated to Neovim for all my editing/writing/workflows from Emacs.
Edit June 19: As I have switched my blogging platform to Hugo this is even more relevant
Obsidian #
I heard about Obsidian many moons ago and never got around to trying it. I was using org-roam as a way to manage notes, but there are a few hangups I had there too, namely formatting and some issues with the database not following new files.
So, I gave Obsidian a try, and let me tell you, it’s really good!
Any org-roam tools that I used to love are right there in the UI, and it is just a wrapper ontop of markdown - so I know that it has staying power. All it does is takes in my markdown files and makes them easily readable while also providing some eye candy such as graphs and the fabled “neuron” graph for seeing how notes tie together. Personal data is stored on your device, and you don’t have to have an account to use it.
The best part is that it just works on mobile and is that portable solution I’ve been looking for. If, for some reason Obsidian were to go away tomorrow, I am sure there would be a clone in no time.
Sweet.
git (Lazygit as frontend) #
The thing that brings all of this system together is a private git repo that is used to manage all changes, deletions, updates, etc.
I use lazygit for managing this as on my phone, I open up the termux app, navigate to the Obsidian Vault, start lazygit, and with one key press pull down changes from my computers. To push is 3 key presses: “a” to stage all, “c” to commit and “P” to push.
I could probably do an automation here, but frankly, it is a good habit to get into to pull in changes and work with git for my projects. If I change this in the future I will update this post.
Hyprland (Window Manager) #
One great thing about hyprland is that it permits you to have a secret window (really a persistent window across all workspaces). I open this on launch into my work session, and the inbox.md file lives on this secret screen. I place all new notes in this file and then at the end of the day, I go into the file and move the notes where they need to go. See my post about how I handle this for documentation.
The Inbox.md file #
This is a master file in the root directory of my vault that has it’s sole purpose of being an “intake file.”
It is the only file opened in my obsidian app on my phone generally, and allows me to add in any thought, idea, todo, note, musing, whatever - immediately and seamlessly. On my desktop, this file is always open on a seperate “secret” workspace that is one key press away, allowing easy capture of anything in a button press.
Edit June 19, 2024: I now just have a terminal in my main Vault directory instead of the inbox.md file open as it allows me to quickly create documentation using my script mentioned in Documentation Solves All Problems
On the server if I am remote, this file is in a tmux pane I swap over to.
Very sweet.
Daily Orgainization #
At the end of every day, I go into my inbox.md file, as well as the note files that may have been created during the day (as documentation for example) and file them away in their respective folders.
Weekly Orgainization #
At the beginning of every week (generally Sunday evenings), I review the previous week, set the goals and events for the coming week, and then file away the previous week into the month that we currently are in. This is an inclusion from my bullet journalling days, and gets me all the benefits of that system while still being portable, embracing electronic formatting, and allowing a way to replicate and move around the vault wherever it is needed.
Conclusion #
So far, I am very happy with the setup, and I am using my phone more like a tool than a consumptive device once more because of Obsidian and the ability to write on the go.
I have written whole blog posts on my phone, a thing that was previously not easy to do at all.
If I update this system in the future, I will update this post accordingly.