- cross-posted to:
- opensource@programming.dev
- cross-posted to:
- opensource@programming.dev
Hey folks! I’m completely new to Lemmy and still figuring out how everything works around here… But I’d love to share a project I’ve been building.
It’s called VOID (Versatile Open-source Infrastructure for Developers) - an open-source, local-first second-brain (note taking app but more powerful) application that combines the flexibility of Obsidian with the powerful organization of Notion.
Unlike many other tools, VOID is not just another note-taking app. It’s built with the idea of being a true second brain that you fully control. No vendor lock-in, no hidden cloud, no feature walls. Everything is open-source, customizable, and designed to adapt to your workflow instead of forcing you into someone else’s.
I’m currently building it with Rust, Tauri v2 and Vue.js. For certain plugins and configs, it also supports SurrealDB as a database.
check it out on my GitHub
There’s already many foss notes apps.
What none of them do well is syncing and collaboration without paying for hosting or self hosting. Joplin lets me workaround this with 2 Dropbox files (1 per profile, 1 being a shared profile) and it’s a pain. And the Dropbox file isn’t encrypted.
An encrypted API access file I can shove anywhere and use would be lovely as an option. Anyway I can share across users would be lovely.
What none of them do well is syncing and sharing notes without paying for hosting or self hosting.
What about Notesnook’s monograph functionality? Unless you mean sharing as in collaboration not publishing
I mean collaboration, I’ll edit. Thanks for asking.
For free hosted collaboration you could use Cryptdrive or Proton Drive. They’re more “office suites” but plenty of people use word processors to take their notes.
I’ll look into Cryptdrive, but Proton doesn’t allow API access to Drive files.
Yeah cryptdrive also doesn’t have a public API afaik.
I do feel like you’re asking for a lot atp. You want something free as in gratis, hosted by someone else, that allows for live collaboration, with a public API? I feel like paying for foss (eg paying whoever’s hosting this) is reasonable at this point.
All I’m asking for is what Joplin already does with one improvement and one addition. So if OP is coding a new app from scratch, why not improve on what exists and is already a FOSS app anyway?
Joplin’s main drawback for collaboration is that the UI can’t handle 2 profiles syncing with 2 different files well, you have to close and re-open the app between profiles, going from your private personal one to a shared profile where everyone sees everything. It’s annoying, but not exactly torture. Being able to save notes individually to a set of profiles (each with its own local or cloud storage location) would be an improvement.
The encryption of the API file is the only fully new thing. When using the Dropbox API, it’s https, so it’s encrypted in transit already, so we’re halfway there. Encrypted at rest is all I ask - by the app so on the device AND in the cloud.
But even if I wanted to pay for encrypted storage on Joplin servers, it’s E2EE - so I would have to pay $90 a year for 3 separate accounts because the collaboration profile needs its own Joplin login, and it’s just being logged in to by everyone who is collaborating. Joplin doesn’t do API use because it breaks E2EE (why Proton and Cryptdrive don’t allow it). And it’s nice they say collaboration is part of their lowest tier - sure, if you share the login. Everyone sees everything. So a private synced profile needs its own account. Joplin is a loss leader for selling cloud storage to run the company. It’s not some passion project on the Fdroid store.
So a new app needs to do the encryption itself. Just do a 6-digit PIN to log in and ask the key, then run the data through AES. Looking around, it’s maybe 50 lines of code, so it’s not uncommon for apps to do that anyway.
Also, am I really getting flamed for not participating in capitalism enough by communism@lemmy.ml? I feel like I’m taking crazy pills!
I’m not “flaming” you. I think I’m being polite and expressing an opinion. I mean no disrespect to you.
Currently, we live under capitalism. Whoever’s running the server you use needs to pay for server costs. It’s the nice thing to do to contribute to those costs if you benefit from the person running the server. Your personal beliefs are not going to exempt you from the reality of how society currently works.
You’re welcome to request whatever features you want, but at the end of the day I feel like paying someone else to host a service of your choice is the easiest route for you and not unfair to you. Unless you’re up for sysadmining yourself in which case you can save money and only pay VPS costs.
What none of them do well is syncing and collaboration without paying for hosting or self hosting.
Not to pick on you here, but you’re surprised that nobody is bulding an app for free and then paying for a server to also give away for free? Open source devs already struggle to make ends meet - now they’re supposed to operate at a loss?
No, not at all. It’s an absolutly fair trade to pay for that service if they’re hosting my data.
Buuuuuut, if OP wants to make yet another notes app and hit a corner that isn’t yet covered, there are features of Google Keep that are not yet replicated well from a semi-DIY low cost perspective. AFAIK, I can self host to sync with some FOSS apps, but did too technical limitations on my end, I can’t reliably self host. So I have to use workarounds.
But of I can just use an API accessable file, and that data is encrypted, OP is a step ahead of Joplin. If I can collaborate with that API access without needing 2 profiles, that’s 2 steps ahead.
syncing and collaboration without paying for hosting or self hosting. Joplin lets me workaround this with 2 Dropbox files (1 per profile, 1 being a shared profile) and it’s a pain. And the Dropbox file isn’t encrypted.
You could use syncthing so no hosting is needed and no reliance on storing your data on 3rd party services. Though you would most likely have the same level of pain as Dropbox since they work similarly (although you did not specify what is it that causes you pain).
Because with Joplin you have to close the app to change profiles. And Joplin is a touch janky, so getting others to collaborate requires a steep learning curve. I really like Joplin, but not everyone in the house is as generous, apparently.
I was looking at Syncthing the other day, actually, but I need all users to cloud sync outside the house, so it’s not really able to do the same thing as Joplin with the dropbox syncing.
Awesome! I want more and better apps in this space. I personally don’t trust myself not to lose my phone, so I want to manually sync files to some trusted place, or preferably, have webdav/nextcloud for syncing the way some notes apps have it. It’s your project, so do what suits you, but that’s something that would push it to the top for me.
Nothing beats syncthing and git
Why is this better than zim?
I thought Zim was just an archival format?
Nope. But some do use it for mediawiki dumps. Never understood that, really
I didn’t even heard about zim before
It’s great! Don’t reinvent the wheel
Why not just contribute PRs to an existing project?
There’s a lot of reasons to make your own project even if something similar exists. Differing codebase, feature roadmap, UX/UI direction, contributor politics, or even because they want to make something from scratch to add to their portfolio.
More options are better for everyone.
Sure, but OP didn’t even know this other project existed
I checked Zim, and while it can definitely be useful, personally I didn’t really enjoy its UI.
Cool, I’ve been considering something like that, I was set on using trillium but now I guess I’ll also give this one a shot !
The more the merrier - have you had a chance to try anytype out?
they have this local sync function that works even without any internet (sort of like a LAN?)
its been really handy for me as I often work in places without internet, but retain the ability to sync between laptop & phone.
What’s the difference compared to Trilium?
Url viiiiiideo is broken
fixed it. I didn’t add a preview 🙃
Strange, on my pc it works perfectly, while on mobile it not working. I’ll check it
i think it works for you bc u are authenticated



But it doesn’t work on my mobile GitHub app too, however on pc it looks fine
This looks cool, and I like your thoughts on it! Are you planning on an Android release too, somewhere down the road?
Yep, android version is already in my roadmap! I’ll start building it after VOID’s beta-release
this looks cool!
I have one suggestion so far. Consider moving to Codeberg. Github has become a very unsafe place to keep FOSS projects.
I would think about that, maybe I will backup everything on codeberg
So basically, a markdown editor?
What’s wrong with just notes in markdown in vim or helix?
Amazing apps, but not for my use cases
I don’t see what the use case for VOID is.
(
It seems like there is more to it, but even if it was just open source Obsidian, that’s a valid enough reason to exist in my mind.
Yeah well I would like for it to have a list of features explaining what it does…
Neat project, shame on the basic premise. Just remember to delete your second brain once in a while, for the health of your first one, and actually use it for something creative once in a while.
Note taking has it’s place, but I agree. Once you go from note taking into crippling habitual hivemind its lost the main point. The time I spent on making my notes look amazing and growing my thought library rather than working on executing my actual ideas was getting insane.
I’ve seen some of the Obsidian maxi’s graphs in tutorial videos. There are people that have spent literal weeks of their precious time on these massive dot-to-line hoards. It really becomes literal e-hoarding. Like counseling levels of bad habit. Then they hold these humongous, continent-sized graphs up like a trophy. Mine’s bigger than yours. Whip it out and prove it.
Now I only jot ideas I want to remember later if I’m in the middle of something, write down dreams I may forget (or nightmares, as it helps me calm down and analyze them logically), and keep to my diet and shopping lists.
I really don’t need more than that. Any reminders or schedules go in my android FOSS calendar (Etar).
the idea of being a true second brain
It’s good that it’s built with this idea, but what is the actual implementation of this idea? What features make it «a true second brain» that other «second brain» apps (obsidian and hundred other note taking apps) don’t have?
I did a bunch of research into second brain/zettelkasten apps (that is to say, apps that support note taking with note interlinking and rich text) earlier this year, and I couldn’t find a single app in the category that’s (1) FOSS, (2) stores notes as .md files natively (Logseq will import/export to .md, but it’s not native), and (3) is cross-platform in some way (for my purposes, I need it to be on Linux, Android, and Mac OS, or have a usable web app). Even the ones that get close all have some kind of gimmick to them, or are super ugly or slow or otherwise hard to use.
If Void can get those three nailed, and do it in a usable way, it will fill a very particular and exciting niche.
You can also try VSCodium with Foam, I think both are FOSS. You can read a bit about this setup on my blog: https://blog.sewera.dev/second-brain
Nice, thanks for that info. I do use vscodium, so that could work.
I know this won’t go over well here but I don’t really care that Obsidian isn’t FOSS, because it’s just a frontend for markdown files in folders. There’s no lock-in whatsoever, and it being FOSS or not makes no functional difference.
That’s fair, but as someone who likes to contribute to FOSS projects with features that I want, I’d like every tool I use to be FOSS, so I can make them work exactly the way I want them to, while also providing something to those that don’t want to/can’t pay for a tool like this, or just don’t want to have the inevitablity of having spent hundreds of hours getting used to a tool, only for the owning company to make it unusable for you.
In FOSS projects, if a project starts to go a route you don’t like, you can ignore all future updates and still get the exact experience you wanted.
I broadly agree with you, but I would still prefer to have another option so that if/when Obsidian goes the Notion route, I have another option to jump to easily.
Me too, but I figure a clone will pop up very quickly if that happens, and I’ll already have an easily portable folder with markdown files.
My big concern is that, since there’s no substantial Obsidian competitor now, there must not be any money in it, which would slow down the arrival of a new clone if Obsidian ever platform-decay’d. Yes, the fact that it’s easily portable is a good bulwark, and that’s why I currently use Obsidian; but to make a comparison, it’s been twelve years since Google Reader died, and there isn’t yet a successor that I’ve found which offers both opml & last-read syncing and unlimited feeds, unless you can self-host.
I guess I’m saying, I’ve been on this ride for too long, I kinda want to get off of it.
The Google Reader comparison is excellent, that one still hurts… I think RSS usage has simply declined tremendously overall though, as opposed to PKM which is still going strong (I think/hope)
I think it’s probably still a subculture, like RSS was. I hope both of them have a resurgence, though.
This is a mandatory comment about Emacs’ org mode since
.orgfiles are extremely similar in syntax to.mdand can be interconverted extremely easily.This is great intel, thank you.
If you deem
.orgto be sufficient and want to use Emacs1 itself, there is an extension for the zettelkasten method of note taking that you might find useful.
1: Despite originating with the Emacs community,
.orgfiles are recognized by many (most?) IDEs, but I’m not sure if extensions are regularly ported to non-Lisp editors.
Did Logseq change? It used to write directly to .md files.
Unclear, at this point, and it’s been a while since I looked.
Doesn’t logseq store the notes as
.mdfiles? There is a directory named pages which contained them last time I checkedIt’s been a while since I read the details, but as I recall it stores them primarily in a database. The
.mds are mirrors or something, maybe?In any case, it looked to me like they could get desynced pretty easily.
AFAIK it stores the notes as
.mdand an index in it’s own proprietary format, which is mostly an issue because the index won’t be encrypted if you encrypt the notes.
Please checkout Silverbullet.md.
Native markdown support, folder structure, customizable by css and some script language.Where were all you awesome people with these great suggestions back in May?!
Did you look in to Zim Desktop Wiki? https://zim-wiki.org/
It stores articles in zim (plaintext) files rather than .md (plaintext) files, but otherwise it’s an excellent FOSS cross platform
Edit: never mind, zim also doesn’t have an Android client. The closest is https://github.com/gsantner/markor which understands Zim syntax
When I was looking into this earlier, I was explicitly searching for markdown clients, so it didn’t come up, but thank you. I’ll look into it!
Considering that one of your requirements is already using
.mdfiles, which is a format pretty common… maybe a combination of different apps on different platforms would work? Specially considering that mobile UIs are likely gonna have different requirements than desktop UIs.One approach I was considering was using neutrinote on Android (which is a relatively simple but functional no-bullshit markdown editor supporting cross-linking between markdown files) and VSCode / VSCodium on the desktop (which also supports cross-linking, and I think has some note-taking related extensions), or maybe zed, or whichever editor you might already be using that can support markdown. Then use syncthing for the sync.
However, I have not yet really gotten into it, primarily because second brain/zettelkasten note-taking in general has never really fully clicked with me, most of the time when I take notes I just use them as a scratchpad / temporary storage… without much of a proper organization … just a note meant to be scrapped as soon as it’s acted on. Often I just use tabs in my notepad app, without really saving them to a file.
That is something I hadn’t considered, and well worth considering. Thank you.
FWIW I use Obsidian on desktop and Nextcloud Notes on mobile (along with Nextcloud sync for, uh, syncing) and it works great. All this and a TB of storage only costs me about 5 EUR/mo with Hetzner.
hi there, how it does compare with silverbullet?
https://github.com/silverbulletmd/silverbullet
like in the readme you say ‘no server’ then how do i use it on multiple devices?
i saw the editor video, cool, is way less snappy than silverbullet. in silverbullet they immediately render the markdown and that makes the cursor jump a bit.
I will create docker container for selfhosted synchronisation/collaboration server, and as option add p2p synchronization/collaboration. About silverbullet, didn’t try it, sorry











