What OSS tools do you use for personal knowledge & task management?

makeasnek@lemmy.ml to Open Source@lemmy.ml – 142 points –

I've been looking into all sorts of them recently: logseq, appflowy, vikunja, etc. What tools do you use? Why? What problems did you run into with the previous set of tools you used for this job?

Right now I'm primarily interested in finding a "zero-knowledge" (cloud provider doesn't have access to my data) system for task management. Needs to be able to have recurring tasks and tasks organized in some interesting/useful ways (by projects/labels/something, maybe a kanban and table view). Deadlines and time tracking/planning interesting but not required.

81

I have logseq ready for the day I finally use it. If I use it. It will be there. Waiting.

For me one of the most flexible and mature way to knowledge base, tasks and notes is an org-mode.

I have two main workflows. The first one is task management. I have a lot of recurring tasks with tags, deadlines, schedules, etc. All of them are living in org-files in my Nextcloud. On Android I'm using orgzly-reviwed for sync via WebDAV, on my work I'm using organice (via WebDAV) as a "web-version" and also I'm editing my notes in emacs on my laptop (but actually any text editor could be used).

The second one is a knowledge base. I'm using org-roam locally (and with a localhost web server, built in into emacs) and orgnote for Android/Web + synchronization. My knowledge base is Zettelkasten-based.

Orgzly-reviewed: https://github.com/orgzly-revived/orgzly-android-revived

Organice: https://github.com/200ok-ch/organice

Orgnote: https://github.com/Artawower/orgnote

Orgnote provide a way to encrypt all notes by your own key/password. With orgzly I'm relying on Nextcloud encryption.

The org.pdf documentation is 300 pages long O_O ! https://orgmode.org/org.pdf

Simple, spin up a Stirling PDF docker, split the org docs and create org notes either by section or by page, linking to the relevant PDF page

Now you've practiced using org mode by documenting org mode in org mode using your own words based off the org mode documentation

Yes... org-mode is more than 20 years old... It is a price of flexibility: I have a strong feeling that one can adjust org-mode to any workflow. But I do not use even a third of the org specification. There are a lot of cool blog posts like "org mode quick start" or "org mode basics", I would recommend to start from such posts, not from a documentation.

I keep failing to make Zettelkasten and org-roam work for me. Do you use a single knowledge base for your whole life, with millions of tags and pages? Or should I be making separate directories for each project? Is the "daily journal" the best place to put everything, with well tagged entries?

You don't have to answer all of those!

Honestly, whatever works for you.

My preferred system is two big directories, one for your daily notes (dailies, journal, etc), and another for literally everything else.

This is how logseq is implemented, and can easily setup emacs org-roam to do it too. It's very nice because you don't need to worry about where to put something, throw it in your daily journals and get all the info down there, and link densely. If it's about a specific topic, link to it and when you go to that topic you'll see the info in the back links below (logseq does it automatically, emacs take a bit of config). You can then transcribe the important/summary/etc info from all of your aggregated back links into a single well thought out and planned document, or at least a single trimmed down one. Or, just leave all the info in the back links, whatever works best for you

This is really helpful, thanks!

I think I need more practice with knowing when to create a node. In the past, every single entry would look like this:

I went to [Alice] birthday party and met [Bob]. We talked about [clouds].

And that got very cumbersome. I like your suggestion of using back links to create a better summary document.

Biggest piece of advice, you don't need to document everything you do in your life. If it's info you might use in the future, a significant interaction or event, fun tidbit etc, add it in. If it's just a casual conversation with someone that you don't learn anything significant or it's something that you'll never link to or use again, just keep it as a memory.

I did a lot of over-capturing early on and got a lot of fatigue from it. Now my note making is as I run across things I'll want to reference in the future (plans that were made, ideas to learn more about later, important phone calls/interactions, notes on articles, updates on projects, etc), with refinement to those ideas coming when I access them again later (or if I'm bored and have time). It's no longer a drain to grow my PKM, it's slower but much more meaningful info

This makes a lot of sense! I'm going to give it another shot with these insights in mind. I think if I frame it as a future-facing tool like you describe I'll avoid a lot of my previous mistakes.

Thanks for explaining :)

No, I have two different things:

  • org-mode files with schedule, diary, tasks, etc.
  • knowledge base, org-roam (orgnote). I have a single base but it contains graphs about topics and these graphs are not connected

I like that approach, because I use orgzly-reviwed on Android with a notifications. And because it is simpler to maintain knowledge base.

Logseq has Org Mode...

It has org mode, but the links in logseq aren't compatible with org-roam links, so either you use custom elisp to make logseq links into emacs compatible links and can't follow links in logseq, or make emacs notes logseq compatible and can't follow links in emacs.

Also, iirc logseq is planning to drop org mode support when they launch their database update, either that or have it available but not updated anymore.

Logseq, kept up to date on all my devices with Syncthing

I can't understand Logseq, even though it seems appealing. I haven't gone too deep yet but to me it feels weird that they say it's simple and then their documentation is confusing and full of videos explaining how it works. That seems far from simple.

I tried and failed. I couldn’t figure out a pleasant way to be able to copy and paste code. The only thing I could come up was to use a different editor for those instances.

Now I’m stuck between Joplin for work and Obsidian for personal, until I finally make up my mind. I like that I can create a second account for Joplin and share just the work related notes while I’m using company infrastructure.

I also tried logseq and couldn't really stick with it. Tried a few others like obsidian, joplin, Zettlr, Simplenote, even just vim and vscode with various plugins, but they all had their own drawbacks I couldn't get over, like a lack of built-in cross-platform support, syncing, encryption, not being open source, etc.

I eventually found Notesnook which strikes a good balance for my needs: open source, end-to-end encrypted, easy to use, decent UI, doesn't mangle code/formatting when copy/pasting, feature parity across platforms; I use MacOS, Windows, Linux and Android and they all have clients that have feature parity - even the web client is really good!

The only thing I would say it's currently missing is to release the source code for the server, but that's on their roadmap and actively worked on. It was this commitment to openness that lead me to try it and after some brief time start paying for it.

Interesting, I have been able to use it for code no problem. They even support different language types to add colors automatically.

I manage my entire life with Logseq. Syncing is done via github, since I have nothing to hide there. I would recommend setting up your own gitlab server instead.

Although not open source, I use Obsidian since its really extensible, works completely local and has open source extensions. I thought about using Logseq too. I'd never trust Microsoft with my personal notes tho.

I sync it via Nextcloud, works somewhat with my phone, too (I have to manually download it, and I set it to upload automatically).

Between PCs it works like magic.

I’ve loved Obsidian since I started using it.

If I moved to OSS, it looks like Logseq would be closest.

There's Trilium-Next too, I've been trying it for a day or so and it floats my boat better than logseq so far. My notebook is on QOwnNotes right now, it's fantastic but on the simpler side

Zim

Its amazing. I keep my whole life in there. Also has tons of plugins that probably meet your tasks needs.

I store it in an a encrypted luks volume that I upload to the cloud, so its zero knowledge on all the clouds.

I've enjoyed Zim in the past but not being able to access it on mobile caused me to migrate. Do you have a way to access your notes on the go?

No, I wouldn't want my sensitive notes on an insecure device

Those are only .md files, I guess any text editor will open them.

Yeah, no reminders and tasks, but notes should be accessible from anything and git can sync it. Never tried it, but text files were the reason I choose zim in the first place. I want it simple.

Zim really is amazing, its the perfect balance with its simple plain text files in folders data structure, but powerful search and back linking. And I love linking to other files on the local file system.

How do you do the LUKS volume upload to cloud? Is it for syncing between devices or just backup? Personally I use (self hosted) NextCloud to sync my Zim between devices.

Just backup. You just have to pause the luks mount and then you upload it like any file.

Same. Perfectly simple to start, and you can build from there.

I just dump stuff if I not in the mood to organize it.

I use Joplin, there's desktop and mobile clients, sync with your own WebDAV server and you've a Kanban plugin. It also does checklists, tables and all the stuff people like. Stores everything in markdown so that's a win.

Same, only I self-host a Joplin server. I have yet to find something that's nearly as versatile with so little effort.

Hmm... besides note sharing what's the advantage of the server over WebDAV? I kina picked WebDAV because I already had the infrastructure in place for other things, and let's face it, it is a piece of cake to get nginx run a WebDAV server.

Webdav is a great option too. I don't know that it's a question of advantage so mush as a matter of preference, honestly. I just like to have my services as segregated as possible. I use Radicale for contacts and calendar. That way, if radicale fails, I lost my ability to sync those, but get to keep syncing my notes and such, if Joplin fails, I lost that ability but my calendars and contacts still sync. I also share a lot of notes, lists and stuff like that with my wife, which makes it easier.

What I have in terms of self-hosted over 14 different services in ProxMox could have been solved by having a simple Nextcloud instance, but I feel nextcloud is overkill for my needs, and if it fails, all my services fail, so I moved away from it about 6 months ago or so.

by having a simple Nextcloud instance, but I feel nextcloud is overkill for my needs, and if it fails,

I do like to keep things separate as well and Nextcloud is an ongoing source of issues and a piece of shit a software. Since I don't share notes I find WebDAV to be good enough and simple enough not to fail.

My setup is mostly Syncthing, FileBrowser, Baikal, Joplin, FreshRSS, WebDAV (for a bunch of those and as a way to have mobile access to the Syncthing/FileBrowser data. Simple and realiable.

Our infrastructure seems pretty similar, except for the Radicale/Baikal part. I also have a Kavita instance, Vaultwarden, Frigate, Stirling Pdf, Immich (but I'm seriously thinking of dropping it as it sucks resources like crazy and tends to break often with very large libraries) and an instance of Wazuh to make sure I have as little potential vulnerabilities as possible in hosts and docker containers.

My wife says I spend too much time playing with my servers and network, but that keeps me home instead of outside, so you would think that's a good thing 🤣

Yeah I get the wife part 😂 I use KeepassXC for password so sync happens over Syncthing for desktop/laptop and WebDAV for mobile. Frigate is something I will eventually get in but first I’ve to decide on a good camera brand that can work 100% offline, right now all signs point at AMCrest but I’m a bit undecided.

Frigate is wonderful, and getting better all the time. I also run Scrypted, which is another fantastic tool! The scrubbing on Scrypted NVR is a lot less painful, but a lot more expensive. I enjoy supporting small open source projects, though.

I did it pretty inexpensive in the cameras front. Got a bunch of TP-Link Tapo cameras, registered them in the app, set the rtsp and Onvif on Frigate, and completely blocked their internet access. Works like a charm with cameras in the $25-65 range.

My issue with tp-link is that their require their app for setup and they lose time once blocked from the internet.

I have not seen the time issue, maybe because Frigate handles all recordings and the cameras are just, well, cameras.

I'll look into that loosing time subject, and if it happens to me, I think there should be a way to change the NTP server, or at least I hope.

The cameras won’t even pick on DHCP provided NTP. The best way to get around it seems to intercept all NTP traffic from the camera and fwd to the local server.

Many have mentioned org-mode. I used it for years but have moved on to todo.txt and markdown. I use syncthing to keep notes up to date on my phone and computer. I edit with whatever is available on my desktop and I use markor notes on my phone.

I think this setup only lacks the recurring tasks option. I think org-mode can do that but I use my calendar for that.

This is a highly personal topic so I'd suggest trying as many things as you can. Something will stick eventually.

This is a highly personal topic so I'd suggest trying as many things as you can.

Seconded!

I've always used joplin mobile for notes and vikunja for tasks and reminders. Vikunja has projects and labels for organizing tasks, and supports list, table, kanban, and a timeline view. There's a paid version (for corporations, I think) at https://vikunja.io/, but there are loads of other free to use instances. I personally use https://todo.projectsegfau.lt/. Edit: I wholeheartedly hope you at least try vikunja https://try.vikunja.io/, because it's one of my most used and beloved services.

Tasks.org for tasks and Joplin for notes. Both can be synced with various technologies.

I use the app opentask. Based on your criteria, it's exactly what you're looking for. It's all stored locally on your phone, it has the ability to set recurring tasks, and you can create categories of preset and custom tasks. Deadlines can be set as far into the future as you need, down to the minute. It's available on F-Droid.

Zim Wiki https://zim-wiki.org/

Desktop wiki, saving to .md text files, can commit to git repo and has basic task handling.

Perfect for me.

Zim can be used to:

Keep an archive of notes
Keep a daily or weekly journal
Take notes during meetings or lectures
Organize task lists
Draft blog entries and emails
Do brainstorming

Org mode on my laptop, don't see any need for anything else.

Right now mainly Nextcloud for task and kanban with Jtx and Deck on android.

For my knowledge markdown files edited with Quillpad, Zettlr, Tangent, Nextcloud …

That's not zero-knowledge but that's work for me and I feel that secure enough in my case for my daily life. :)

I just use Zettlr (a markdown editor optimized for writing research papers). I wish it wasn't an electron app, as it's paggy as hell sometimes on Linux, but it's the best balance I've found between features, ease of use, and stability.

After many years of Org-mode, I've settled on Emacs Denote with a git repo of markdown files, paired with a paper bullet journal.

I'm curious why markdown works better for you?

I just switched to denote - liking the simple elegance.

I stopped using the task management features of Org mode and I wanted to use Apache mod_markdown to view my notes when on a mobile device. I like how simple markdown is. It's all I need for notes. Denote is great for keeping organized.

Not who you asked but I'm a big fan of markdown because it lets me create notes that are:

  • Fast
  • Useful
  • Pretty

Usually you can only pick two of these things in a paper notebook or other file types. I personally use Obsidian right now, which allows me to create notes even faster with hotkeys and JavaScript templates, but any markdown editor with a preview mode is plenty

I would ascribe the same virtues to org mode, but to give one answer to my own question, markdown is entirely editor independent which is generally a plus, though least so for personal notes where org can export to many formats (including markdown).

With org and Emacs there are other benefits like integrated personal to-do and agenda management which is why I have favored it over markdown. But even though I'm a committed Emacs user, being primarily an Emacs format is a philosophical negative if not a practical one for me in this case.

Obsidian thankfully has many of the same features that you're describing, albeit some of them rely on community plugins. The cross platform accessibility of markdown is definitely the biggest factor for a lot of people - but for me, the fact that I can instantly make an aesthetically pleasing note; one that is not just easy to read and gather information from but is also nice to look at: is the biggest plus. Other editors have plenty of templates and most people probably don't care about how their notes look as long as it's notes, but I love the look and feel of a good markdown note

I’ve been using todo.txt for tasks for about a month now—it’s dead simple, supports all the bells and whistles you mentioned; and, with the topydo CLI, you can very easily make yourself a kanban interface using its columns UI. I sync the files with my iPhone and use Todooo on iOS, which works beautifully.

As for notes, I just write simple text files with my favorite editor. Maintaining complex systems of interconnected notes, I’ve found, most often does not pay off for the enormous time investment required (some specific use cases aside); tags, links, etc. I have all found to be superfluous—any kind of grep integration in the editor is all that’s needed for finding things. I write in either markdown or Typst, because basic Typst is essentially the same as markdown anyway, and because I’ve found it very useful to keep notes in the same format I write longer-form documents in.

I use SuperProductivity. It works really well. You can keep track of how much time you spend on individual tasks and I sync it to my nas server so it's synced on my phone, desktop, laptop

None. I'm used to Notion and unfortunately there's no OSS even getting close to that. I would like to move away, but even if I considered to lose my current base or move everything manually, there's nothing feature-rich enough to meet my use cases.

Edit: Neat project.

::: spoiler Original: Original: This is a plugin for a closed source application. While the plugin may be OSS, the main application Obsidian is not. :::

Well I don’t use obsidian as all. But as a matter of opening and linking notes, I use this tool because I like it, and it allows me to reference two separate vaults without issue.

I've never found a use for any of this. I only utilise a calendar. How complicated are your people's lives?

I'll take the bait if no one else will.

A calendar is useful for one thing: pinning events that will happen at a known time and being reminded of when they are about to start.

If you need to keep extensive notes on projects, understand how late or accelerated tasks will impact other dates, break down work into steps, track progress on a project or individual task, create lists, map ideas, inventory items, archive knowledge, or sketch workflows, a calendar is worthless.