A structured note-taking app for personal use
github.com
github.com
There's a healthy ecosystem of plug-ins, searching is highly performant, all of my files are just structured in folders as markdown files so there's zero vendor lock-in, has a very good mobile app, and I use git for easy sync / versioning.
The only downside is that it's not open source.
While the initial experience is super confusing and I barely knew what that tool is supposed to do, later on it turned out to be the first tool that helped me keep some structure in my notes.
I love note taking but I'm horrible at it, chaotic and inconsistent. Daily notes plus the way logseq easily links articles gave me some decent notes. I even left those to my colleagues when I switched jobs and even plain markdown files were useful for them.
For me, I already have a daily planning and project management tool, and it's called Pagico. What I needed is a note taking application. Simple, down to earth, knowledge base. A successor to Zim wiki, I may say.
That thing is Obsidian. I tried to resist to moving it for so long because it's closed source, but it creates value and extracts structure and knowledge from your Markdown files, locally and super-fast, without bogging you down.
Also, logseq's webpage is very ambiguous. Tons of promises, no screenshots, you enter the live demo, it looks like a simple web page.
In short, Logseq feels too big, feels too hard to start with, and demands too much at the first impression. If failed to get me, and I failed to get it.
I tried it a few months ago because of all the hype, and from a quick try I didn't see anything useful that my current choice (Joplin) didn't have, but from what you are saying, maybe I didn't try for long enough?
I like Joplin, one of its strong points being that it's open source, but I'd be willing to switch if an alternative really adds value.
My reasoning is to approach contents as data-first with tools on the top. Obsidian happens to be one such brilliant tool for now.
It's search is extremely fast, plus with a bit of metadata, you can pack tons of information into a standard markdown file.
Moreover, when you start to add more and more knowledge, you start to connect notes to each other, which creates a Zettelkasten-like connected notes web. I write gigantic notes generally, but even they have connections, and again the searching for linking is so instant, you can write at the speed of thought.
I have a simple tree note organization scheme, and Obsidian can handle it extremely well, plus files are open on the filesystem. I can unleash another tool on top of that file tree, if I want to edit or analyze them.
I still use Evernote for some personal notes, and Joplin is just the same thing, and its limitations on file/note organization is very limiting for my needs.
Lastly, Obsidian vaults are completely isolated from each other, so the vault which I manage my small digital garden is completely isolated from my work vault. They are on different places, sycned differently, can have different plugins, etc. This is a very nice feature.
TL;DR: Obsidian is a pure "knowledge/documentation" management tool and allows for creation at the speed of thought. It's unobtrusive and Markdown metadata is extremely powerful. Also leveraging internote-connections supercharges Obsidian.
ZK isn't a notes web or anything like that. Just because it can replicate some of the ZK 'methodology' doesn't mean it's Zettelkasten-like.
It's a wiki-like connected notes application.
It's less linear than a Zim Wiki like desktop wiki, but more linear than a "cloud of floating notes" approach of TiddlyWiki.
The thing i missed the most is the outline style, where every block can be queried and nested bloxks inherit tags from parent blocks. Huge for note taking
This is why I'm a big believer of horses for courses approach about everything in life. If logseq works better for you, more power to you. I believe and love huge text files with tons information, so Obsidian and similar tools works better for me.
I do have a reason for avoiding obsidian, which is the one I outlined, but your case is totally legit AND a good reason for choosing obsidian over logseq.
The outline vs non-outline is really the big difference between the two. I'm not sure if it's possible to have both approaches in a single editor given the huge difference in behavior
Yes, Obsidian has tons of plugins, but I use exactly none of them. The features they add is immense, but I need none of them, because I just write tons of long text files, not dissimilar to old, long text files ubiquitous on the web in the early days (think https://computer.rip style writings, but as technical docs).
The difference between the two is very fundamental as you say, one has an internal database while the other runs on simple Markdown files with minimal extra data on top (except search and index Obsidian keeps internally per vault).
Again, there’s no hard feelings, just a hat tip to the diversity of our brains, way of thinking and creativity of people for devising these different ideas regarding knowledge management. :)
You don't need to even think where to put notes.
All that overwhelm that all the folks are speaking about, just start writing in your daily page, when you look back -> you have a clear link.
It actually kills ambiguity without having folders and having too much un-needed structure (obviously use-case varies).
Logseq doesn't need plugins because a lot of it is already in-built (tasks, block-references, in-built queries).
It reminds me of the discussion when people praise Next.js for all the packages, and ecosystem but its not a feature, there is a reason people building these.
For some people, stuffing pages into a notebook (a-la Evernote/Joplin) is fine. I use Evernote, and it's fine for most things.
However when things start to get crowded, this model breaks down. I also don't like shoving things into an application and meta-sort it with tags and whatnot. I like structured work, because I can put clutter aside in the structure and focus on what I'm working on.
Also, having the files as plain Markdown files is a plus for me, even if it doesn't have the block references. As I already said, I need Obsidian for document and knowhow management, and glorified text files are what I exactly want.
This is interesting, because it wasn't my experience at all. I migrated from Roam to Logseq after I realized I didn't use enough of the fancier features to justify the price. Basically I open Logseq, take notes in my daily journal, and tag blocks so that I can easily pull them up by topic/person/etc later. That's all it took for me to get started, and also as far as I've felt the need to go. For better or worse I have no idea what other "kitchen sink" features it has.
This is what Obsidian is. If I wanted something to organize my tasks and other things, I'd take a much different route.
What I'm aiming to get is akin to these: [0] & [1]
For me it was the fact that it's a pure outliner and I couldn't write free-form text. Everything had to be list.
I _still_ have some notes in Evernote. Imagine my surprise when I logged in after maybe a year of not using it and now search in text notes is not working unless "you upgrade". WTF?
The only good feature of everyone now is that it's easy to export ones notes (I hope that still works).
(about Obsidian) >The only downside is that it's not open source
Indeed, but a saving grace is that it can just store in a bunch of text files you can use any editor with. Some editors (neovim/emacs I think) have plugins to read/write obsidian's notes properly.
https://www.theverge.com/2023/11/29/23981683/evernote-limit-...
I'm kinda pretty well organized. If you wake me up in the middle of my slumber, I can tell you where I have kept something with a series of steps to make it easy for you to find. Even if not precise at times, I will have a way via a general direction. So, this works for something like Obsidian and will only work for things I know how the underlying things are organized.
This is also why I lost Logseg - it was too smart for me and my ways.
I use logseq for note keeping but I just want the text editing experience of vs code.
I'm not sure why they all roll their own editor. Can't it be a plugin?
1. Editor as in a complete program that is VScode and everything it entails.
2. Editor as in the actual text editing experience with syntax highlighting, code completion, etc.
You are likely thinking about the first type. Where the person you respond to is talking about the second one. The experience of editing markdown in VScode is a very pleasant one so I can see why people would want that editing experience in other markdown based note apps.
This way I context switch completely away from code.
Also it annoying to swap workspaces and keep the up.
I can see how having the environment be at least cosmetically different might help though. I feel like there must be a good enough solution to that, I'll have a poke around
There are multiple reason, like editors having too much of their own baggage, or not being meant to be used as a foundation for a mature app. But I guess mainly it's a matter of licensing, and building your own editing-experience.
VS Code is for plaintext, while obsidian has deep rich-text-handling. It's probably not that easy to combine both flawless and still supporting all the plaintext-editing.
For actual coffee editing, there is also https://github.com/sunxvming/obsidian-vscode-editor
If you use something proprietary, then yeah, it might be difficult. But that doesn't stop us from asking whether something we're interested in using now uses data formats that would be easily readable in 20-30 years.
But even if I it wasn't I don't like to think about the lifetime of any thought as I note it down. This os a distraction I don't need. If the closet with the notes in it fails, I want to be able to read them still.
Actually... I reference a lot of notes from at least 20 years ago. There is a lot that doesn't change, you forget, and is an instantaneous search away. I don't foresee this changing in the interim 10 years.
It's a free and open source local-first of Notion+ Obsidian.
I like the way you use to take notes. I know it from Workflowy [3].
Everyone has some personal approach and use cases for taking notes. From taking only notes for a grocery list to a full-fledged personal wiki system. And it is important to figure out what PND (pain/need/desire) your application should really satisfy.
In the same space, personally, I'm a huge fan of Joplin. Apps for every platform I care about, and the ability to self-host the server component (which is what I do). I has some really nice features, like import/export of directories of markdown files, and sharing notebooks with other users.
Thanks for bringing it up though, I went for spicy programmer drama but instead found a somewhat interesting and incredibly polite disagreement. I am curious about what happened that they have such a solid opinion about acceptable use of file metadata.
Not sure I agree. Here's one comment by the developer (laurent):
"Ok, there's so much wrong in what you write about that it's hard to know where to start. I guess it would help if you had a clue about what you're talking about."
https://discourse.joplinapp.org/t/why-im-leaving-joplin-for-...
It's one of these features that, all things being equal, we'd rather have than not have, but it's obviously not trivial to add it when the app wasn't originally designed for it.
And the previous comments were claiming that this project's data was 'proprietary' and not 'open' and the situation was inexcusable, basically because they assumed a database was this big scary thing (as opposed to an open book). That is a frustrating experience, and yeah maybe indicates that the person telling you how to write software doesn't know what they are talking about (for the folks following along at home, those frivolous cries of foul play were distracting from the real need they had for plain text over a database, someone else describes it quite succinctly a little later)
I think file system vs database storage is very much about trade-offs. Unfortunately the debate descends too quickly into who is right and who is wrong.
It's always difficult for developers to talk to users who often really don't know what they are talking about. I know that very well.
The only thing you can do as a developer (if you have time and patience) is to translate what users say into the closest thing that does make sense in terms of trade-offs.
But nobody is always patient.
I'm interested in what advantages you have lost. Joplin allows you to export your entire notebook as a directory of markdown files (with front matter), and from a performance, reliability, and replication perspective, a database seems like a much better choice.
Not really. Obsidian has its shares of problems too, and most of them originate from using Markdown. Markdown is a freeform text-format, and works very well for writing text, but it really sucks for data and structured content. Most plugins and features in that area are very brittle and overspecialized, working only well enough in their specific use case. And gosh, Obsidian has really a huge amount of plugins for data-handling. At some point, it was so bad that there were multiple competing task-plugins which broke each other just because they had different formatting for dates.
Depends on how you see it. I think it's great that they have a free market of open-sourced plug-ins that you can donate to. I'm actually impressed of how rarely they break each other.
Aha. Which problems do you mean?
> Markdown is a freeform text-format, and works very well for writing text, but it really sucks for data and structured content.
Joplin is using md to. And if Joplin does a good job on "data" and "structured content" (whatever you mean by that) by separating that in their DB, it's a big NO for me since it's a closed silo.
This: https://github.com/blacksmithgu/obsidian-dataview works so wonderful for me, and it never breaks anything in my simple md files.
> Most plugins and features in that area are very brittle and overspecialized, working only well enough in their specific use case.
Aha. I don't think so. Which authority says that? And even if It's like that, my markdown files would survive everything, since they are a) in git. https://github.com/denolehov/obsidian-git and b) easy to fix since it's a text file. Gosh!
> And gosh, Obsidian has really a huge amount of plugins for data-handling.
And gosh, this is a good thing!
> At some point, it was so bad that there were multiple competing task-plugins which broke each other just because they had different formatting for dates.
Installing multiple task plugins shows that something is "broke" on the user side. It's not the fault of Markdown or Obsidian.
Just have a look on: https://github.com/ivan-lednev/obsidian-day-planner but you dont need a fancy task plugin like this, if you know your way around https://github.com/blacksmithgu/obsidian-dataview or https://github.com/obsidian-tasks-group/obsidian-tasks
Since the Ecosystem around Obsidian and pure Markdown, most of the time I stay in my browser https://github.com/deathau/markdownload and nvim https://github.com/epwalsh/obsidian.nvim
The way it's handled can make the difference in control.
> by separating that in their DB, it's a big NO for me since it's a closed silo.
Joplin is using a popular open database with a healthy community and good tooling. It's as open as markdown. Maybe not for you, when you lack the knowledge, but markdown is similar closed for anyone not understanding filesystems and editors.
> This: https://github.com/blacksmithgu/obsidian-dataview works so wonderful for me
Good for you, but that is very low level in terms of data-handling. Dataview is really just an elaborated search, there is no good level of interaction. Datacore, the next project of the Dataview is supposed to bring this, but it's not even usable yet AFAIK. Coincidental, the Obsidian-devs are also working on that front, but nothing is finished yet.
> https://github.com/denolehov/obsidian-git and b) easy to fix since it's a text file. Gosh!
That's useless when the app itself is not working. And even worse if you are not realizing the errors early.
> Aha. I don't think so. Which authority says that?
My own experience. I've tested enough plugins over the years to know their dark corners.
> And even if It's like that, my markdown files would survive everything
The thing is, technically you are not even having proper markdown, but a fork with some extensions of Obsidian. So some features of your parts might break when switching away from Obsidian. And the reason for all this is also because markdown is lacking definitions for what obsidian-people are doing with it. Coincidentally, this seems also one of the reasons why Joplin is using a database.
> And gosh, this is a good thing!
Not if they all suck.
> Installing multiple task plugins shows that something is "broke" on the user side.
Sure, because the plugins are lacking features, its the users fault... Maybe some users have just very different levels of requirements from you.
You can blow up the db & regenerate it very quickly. All the data is still flat files. But the advanced functions harvest & are derived from the source of truth. Seems like a perfect compromise.
I haven't done it yet but I have a git-auto-cimmit project I intend to use with logseq, that'll help me better keep a record of changes over time. That ability to have a flat file source of truth feels hugely hugely empowering to me, and I have a hard time imagining having anything else.
(they also don't support smartphones?)
I'm not sure what you are talking about vis a vie "changing the data layout". You can do whatever you want, it's just flat files. Git is great at tracking file renames.
Trying to say data is duplicated is basically wrong, as far as I'm concerned. There's a materialized view, which very few people I think would argue breaks the idea of data-nornamization. There is only one data source, the other is a generated view which can be regarded as ephemeral data.
I sympathize a lot with the parents perspective that Joplin switching to database backed world is a pain. I think the appeal of well managed flat files, controlled by git, is much more directly manageable & has much broader tooling. I appreciate attempts to raise dissent against this system, but none of your points carry much water for me personally. It strikes me as pretty weird having these litany of basically wrong non-issues to swat away?
Git uses heuristics to identify renames, and not a great one (and also limited in number of files), which is a known limitation of this "great" tracking
And data structure means renaming/moving your flat assets, even if git catches them, your note app will not. Or breaking cross-references due to that. Ability to regenerate broken wouldn't help you here
What "broader tooling" do you mean for notes when you don't even have a real system, just something all you could imagine as the best?
Also wild to ignore smartphones as yet another non-issue
Git does come with some challenges (deleting a file from history is a good one; the filter-branch command for doing so can be a beast!), but overall there's so many git tools available. Gitlense, GitHub, magit, gitk, and hundreds more ("broader tooling"). And is imminently google-able. Love it or hate it, it's a well known system, and TinaCMS using git seems like a huge advantage to me (with my reasonably competent modern developer hat on) in any circumstance.
Tools like logseq and TinaCMS have ways to rename pages, without breaking references in their markdown. Seems solved.
Smartphones are pretty good at using web apps I've found so not sure why you once again are leaping to attack again.
"you can have only one in the database and then store just the diffs" has big "draw the rest of the owl" vibes to me. Maybe it is really easy. But I have to learn that system & figure out how to work with that history. I see very little benefit in a simple system, that is custom tailored to one particular use, that will have a range of limitations I can't assess or judge well ahead of time. We have a great tool for handling control of different versions of text over time. I'm here for it. It seems wild to me to imagine DIY'ing for your specific app.
> "It seems solved"
Care to share specifics? You've changed file names/folder structure/image file name/format etc. in your favorite flat file tools How does a system reconcile those edits happening outside its garden?
> Good at using web apps
A single good example for this domain would be nice. Say, you have your flat files in Dropbox with .git? Which web apps could I use?
> "draw the rest of owl" vibes
More like "imagine someone can draw it" just like you had an image of the owl in this meme in your mind.
By the way, if you plan to use autocommit, so basically have just a linear series of diffs added automatically, what does git buy you?
> but I have to learn
Well, yeah, doing something better requires learning how to do better
Using fancy apps, where you can do formatting, place links, etc? I spend too much time futzing with all that stuff and less time actually getting stuff done.
What I do now is have markdown files, and use the OS folder system for organising. I then use OneDrive for syncing - this works perfectly fine between MacOS and Windows, and for both I use Visual Studio Code for editing. For android I use an app called FolderSync to sync and TMarkor for editing.
Has been working perfectly for over a year now.
Only asking since this was also the editor I ended up settling on in Android, but it seems like TMarkor is just a repackaging of Markor without any references to its forked(?) source.
My requirement was that the editor had to be open source so that I could audit the repo and compile the APK from source, as well as potentially fork it for personal modifications if needed.
I would go further than that also. It directly mirrors https://anytype.io/ but without the desktop or mobile clients to actually store the workspace on your device.
Why would I use this over sonething like zim-wiki? Admittedly there is no mobile client but in a pinch I use markor for that.
Side note: "Privacy first" but then "Login with Google" :)
I don't know what to make of this. I do like the fact that it's a tree, and you can sort of create a document-like hierarchy. The issue with enforced hierarchies is that you now have to find a spot in this arbitrary tree structure for every note you take.
It's also a little jarring that list items are treated in the same way that two articles would be. I'm not sure I like that. Lists are a useful readability tool, but articles and chapters are semantic partitioning concepts. I get a little bit of a weird feeling when this is the only representation of the note set that's available. And it feels like cross-referenced notes might be difficult to represent.
I do like the representation from a minimap perspective, and it's making me think that maybe the best solution is to use this tree-view as a UI model rather than a canonical representation.
- Tana.inc (closed alpha) introduced the concept of supertags [1], equivalent to what this app calls meta tags
- Remnote.com also added editable tables [2] to its outlines not long ago (only in the paid version).
- Logseq.com is planning such an addition soon.
It is a powerful combo because it combines two very primary ways of interacting with data: the tree (outliner) mode and the grid (table/DB) mode.
So for me, this could be an alternative to logseq as OSS/local. It seems promising, I hope it will continue to grow.
[1] https://tana.inc/docs/supertags [2] https://help.remnote.com/en/articles/8118336-tables
Capacities is partially going in this direction. Notion, less so, but it is simple and advanced (linked records...) and hence a favorite of mine too.
Do you use the former to manager personal tasks, while the latter for coding tasks?
I thought Foam would be great, b/c I already wrote lots of Markdown in VSCode, but Obsidian was much better for me.
I already made a Kanban board for my previous note-taking app but it’s in a different view[2][3].
[1] https://www.get-plume.com/
I am low-key into these type of apps. Similar enough to Google Keep, with more privacy and (potentially, didn't really check) E2E encryption.
Sharing and cooperating notes with others is a must-have, but it's unclear if there are any plans.
Nobody else really comes close, at least not in the FOSS space, but hopefully one of these days someone will!
IPFS maybe?
- The splash screen asking me to install as PWA or to go to the web app is not hiding the app. Overlapping the text and confusing me - The buttons for the days don’t work - The calendar selector is not working either
Does it sync between devices? Does it work on mobile at all?
Well, at least it isn’t cloud software.
https://github.com/vrtmrz/obsidian-livesync: self-hostable sync via CouchDB, MIT license, supports the visual conflict resolver and end-to-end encryption.
Any comparison?