Hey everyone, I’m trying to replace most of the private owned app I use by FOSS ones, and today i’m pointing at notion.
I just use it as a way to organize my notes and use it both on my laptop and phone, and i’m looking for something that can have that fonctionnality.
I’ve already looked into a bunch of foss note taking apps but I didn’t see any that could do it. (maybe i didn’t look hard enough tho)
I’m willing to use syncthing or smth similar if needed.
do you have any recommendations? anyway, have a nice day and thanks to everyone making the internet/softwares more libre and accessible!
What also works is using SyncThing. That way you can sync any app that uses files that you want. I use Obsidian for note taking which creates .MD files in a designated folder, I sync that folder with my phone.
Joplin. It’s cross platform and just works. No hassle.
I use Notesnook, but as an alternative to Notion and more complex features, it’s way too simple.
I use Notesnook and I’m happy with it. They have a flagship instance with free accounts if you don’t want to self-host.
If you want something more lightweight and are up for using syncthing, just a bunch of markdown files synced with syncthing also works. You can encrypt them with your pgp key if you want encryption, but that doesn’t encrypt metadata like file names, directory structure, or when files were last edited.
Putting in another recommendation for Notesnook.
Standard Notes
Probably Nextcloud
Setting up nextcloud for notes is, to take a quote from the late Robin Williams, like doing chemo cause you’re tired of shaving your head.
I love Nextcloud but it’s such a beast to setup
Filen, German OpenSource cloud service, 10 GB for free
The inbuild notes in the Vivaldi browser (Markdown) are synced between Desktop and Mobile, no third party app needed.
Anything with cloud support, really. I’m using iotas and some Android nextcloud notes app. Most apps will just write notes to .md files you can sync with nextcloud/owncloud using the desktop client.
I’ve never used it, but I’ve heard good things about Notesnook.
Been using Notesnook for almost 3 years now and it’s just awesome. Highly recommend!
Currently using siyuan. Just wish you could use the app with a self hosted instance.
Do you have to pay for sync?
Joplin. I use it on my phone, multiple laptops and Linux desktops.
I also second this. Working like a charm for me over 4 different devices and 3 different Operating systems.
Do you ever regret that Joplin does not store notes in plain text? (meaning you couldn’t edit your notes in a plain text editor if you wanted to)
Nope not a bit. But you mean through exporting stuff I assume(?).
If for any reason I need to move something to a text file (very rare) then I just cut/copy and paste without the MD.
I second this.
Actually, you can use Signal for this, if you have it on both your phone and laptop, and use “note to self.” I prefer this because it’s very straightforward and isn’t bogged down with a lot of extraneous extra features that other notetaking apps I’ve tried tend to have.
It’s like obsidian (I hear) but FOSS. I love it and it’s by far the self hosted service I use most.
It stores your notes in a plain directory hierarchy of markdown files so you can just point a cron shell script at it to git add/commit/push at your desired internal and you’ve got history tracking/backups too
Edit: also provides a PWA so you can “install” it on your phone instead of always using a full browser.
Edit x2: includes a Lua interpreter so you can get scripty with it. I use that functionality more than I expected and I suck at Lua
Edit x3: and it auto synchs to each device when open with conflict detection. Full copy is stored local to each device, synched when possible
includes a Lua interpreter so you can get scripty with it
Any examples of what you’re doing with scripts? I use some custom programming in Org-mode in Emacs, but curious about what other people are doing in different apps.
The two biggest things I use it for are programmatically generating “lists of lists” (lists of pages, more accurately) and as a semi-hacky way to get text colors. Semi-related, the “Treeview” plugin gives you a folder hierarchy panel off to the left (by default) which is really, really nice.
I should probably clarify that I didn’t write these, I stole them from the Silverbullet community forums… also I should reiterate that I suck at Lua so take my explanations with a grain of “this person may not know what they’re talking about” ; )
Lists of Lists : I have a bad memory so I create a LOT of lists. I even have a base page named “Lists” that I then nest different types of lists under (TODOs for home, for work, for school, for projects, for selfhosting, etc). Since the table is programmatically generated, it’s always up to date on each load. This first snippet relies on using
frontmatteron the respective pages along with thetagsproperty.${query[[ from index.tag "todolist" order by lastModified desc select { List="[[" .. _.name .. "]]", Modified=_.lastModified } ]]}This retrieves all pages from the space index with a tag of
todolist(from thefrontmatter), orders them bylastModified, descending, and renders a table that contains thenameandlastModifieddate. This is excellent for providing a list of pages (based on tag,todolistin this case) related to a topic and ordering them by the last time they were changed. I use this in the base page for pretty much all of my “folders”. Screenshot :
Text Color Hack : Since the Silverbullet markdown interpreter doesn’t (currently) support plain HTML, and the way we usually color specific areas of text within Markdown is
<span style="color: #fff">white text</span>, they had to get inventive. Somebody came up with a way to provide Lua functions that will accept text as a parameter and then render it with the specified HTML color/style.In my
CONFIGpage (that is applied to the entire space) I included aspace-luacode block like :function Red(text) return widget.html(dom.span { style="color:#e60000; font-weight: bold;", text }) end // Also about 5 more for different colors I use, snipped for simplicity.Then, anywhere in my Silverbullet space I can use a Lua code snippet like
The following word is ${Red("red")}and it will invoke the space-lua function namedRed()on the textred, apply the styling, and render it with CSS color#e60000. Hacky? Yeah… but it works for now. Screenshot :
… I’ve been meaning to build a generic
Colorize(text, hexColor)function (which would likely take all of 30 seconds : ) but haven’t yet. Maybe tonight.EDIT: That did, in fact, take 30 seconds. Function :
// This assumes "color" parameter is a valid/properly formatted CSS color, meaning a known word ("red"), hex ("#ff0000"), or presumably RGB/etc but so far I've only tested color names and hex (I typically use hex) function Colorize(text, color) return widget.html(dom.span { style=string.format("color:%s; font-weight: bold;", color), text }) endUsage :
${Colorize("any text", "#00ff00")}Interesting, thanks. This Silverbullet thing turned out to be more complex than I originally imagined, I thought it’s a hierarchical notes app as usual.
I have a bad memory so I create a LOT of lists
I’m the same way, but that led me to Org-mode with local files (synced to the phone) and loads of nested outlines, like thousands of items.
But since it’s programmed in Emacs Lisp, I’ve made me some custom commands like logging taken medicine with the current time and date, adding an episode to the log of series watched, etc. I also plan on hacking together a brother extension that would send the page title and address to one of specific places in the outlines, but I keep putting that off.
Lol
I just researched PWAs with this article.
PWAs aren’t a silver bullet, but when applied in the right contexts, they continue to offer undeniable benefits
Now you are telling me silverbullet(.md)
provides a PWA
Hehe. So PWAs aren’t a silver bullet but Silverbullet can be a PWA.
Is that one of those “all squares are rectangles but not all rectangles are squares” type things?
I’ve been using a self-hosted Jotty instance, it’s been pretty great!













