Skip to content

Instantly share code, notes, and snippets.

@stepancheg
Last active January 29, 2022 10:04
Show Gist options
  • Save stepancheg/33fba2a9d040e54f34b7bb386e87c11a to your computer and use it in GitHub Desktop.
Save stepancheg/33fba2a9d040e54f34b7bb386e87c11a to your computer and use it in GitHub Desktop.

Obsidian is a note-taking app

Obsidian is a gem.

It is the app I always wanted.

A long time ago I used Evernote

Evernote was great, but it degraded over time: they had a nice and fast note-taking app and added hundreds of functions I don't need. It became slow and the interface became overloaded in the last version I used many years ago.

So I switched to Apple Notes

Apple Notes are good, except:

  • editing text except for plain text in Apple Notes is hard. I use Apple Notes as a less convenient app for plain text notes
  • In particular, storing program snippets in Apple Notes is inconvenient
  • rich text paste is not reliable, fixing it is hard. E.g. to fix link label
  • it's not possible to separate personal notes and work notes
  • note storage format does not allow automation (like backup)

And most importantly, it is vendor locked. You can only use Apple Notes on Apple devices (technically, it can also be used in a browser, but it is not the same).

I'd like to eventually escape from Apple zoo. Apple laptops are the best, and macOS UI is second to none, at the moment. But:

  • I ordered that Steam Deck which I'd like to use as a computer. It runs Linux
  • Occasionally I need to use Windows computers, e.g. at work
  • I hope eventually there will be a startup, which would create Linux-based quality MacBook alternative
  • iPhones are OK, but Pixel is OK too

Obsidian doesn't have a vendor lock

  • all notes are stored as plain text files in a folder
  • there are clients for all environments (except browser, but that's OK)

Notes are stored as *.md

All notes are stored in markdown format in a folder on a local disk. Note title is the file name. It can't be simpler than that.

  • notes can be edited with Vim (or Emacs)
  • notes can be processed with a shell script (like to patch links for example)
  • can be backed up with cp command
  • a folder can be "forked" also with cp
  • and so on

I will never use any note-taking app using a storage format other than this.

Synchronisation of notes

There are several options to synchronise notes.

  • Notes can be stored in Dropbox. It won't work on mobile, unfortunately, but I hope authors will implement this feature. It requires integration with cloud disk API, and they did non implement it. Hope they will.
  • Notes can be also stored on the iCloud drive. These notes can be accessed on iPhone
  • Notes can be also stored on Google Drive to access them on Android
  • Finally, there's paid Obsidian owned synchronisation service. These notes can be accessed from any device. But it costs something. Works fine, and has a great feature: notes are encrypted on the device: their servers cannot read them.

Vaults

Obsidian has vaults. Vault is a folder that contains notes or subfolders.

I have two vaults: personal and work.

Obsidian opens a window per vault. Values have preferences, the important one is the theme. I have a light background for the personal vault and a dark theme for the work vault. So it's easy to pick the correct window when writing or reading notes.

A vault is a unit of synchronisation. Different vaults can be synchronized using different setups. For example, the personal vault can be synchronised using the Obsidian service, and the work vault can be synchronised using the work Dropbox account. And some third vault can be stored in the shared Dropbox folder to share it with your family for example.

And again, a vault is just a folder. If you decide to switch from iCloud to Yandex Disk, you can do it in a minute: close the vault, move the folder, open the vault.

One nice little detail is that vault preferences are stored inside the vault. So when you enable synchronisation of the vault on another device, whole configurations are there.

Markdown editor

Obsidian has the best rich text/markdown editor. They implemented a combined mode, which is:

  • all lines but current are rendered as rich text. Very useful for links.
  • currently being edited line is plain text
  • it inserts matching braces

User interface

Obsidian implements a common note app UI pattern: folders and notes are listed in the left panel, and the right panel is the currently edited note. Natural.

There are some papercuts in the UI, like:

  • you can't delete multiple notes at once
  • find control to navigation control requires a click
  • find results are not easy to read
  • etc But these are minor.

Their user interface is super fast and responsive. It is strange to mention that for a note-taking app in 2022, but it had to be said.

They use Electron on all platforms including mobile, they use the same code, so UI looks similar everywhere, and they don't need to implement UI multiple times.

Clipper

There's an unofficial clipper browser plugin.

It requires two minutes to set up, but it works perfectly afterwards: you select text on the page, click a button, and a note is created in Obsidian, which contains everything's needed:

  • date
  • the snippet with HTML converted to Markdown (and HTML to Markdown converted works well)
  • page URL

Another nice detail about Obsidian, it registers itself as obsidian: URL handler. So that browser extension is really simple: it just "opens" obsidian: link.

What could be better

There are some imperfections in the UI like these I mentioned above.

The initial setup is not trivial. Like figuring out how to enable note sync (first you need to enable sync plugin, and then find where to configure that plugin). Your grandmother won't be able to configure it.

Hope they'll improve it.

How much does it cost

I pay for Obsidian Sync, which is $100 per year.

And my employer pays for a commercial license, which is $50 per year.

If you are fine with iCloud sync for iPhone/macOS, or Google Drive sync for Android/any computer, it can be used for free.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment