logoalt Hacker News

Show HN: Files.md – Open-source alternative to Obsidian

339 pointsby zakirullintoday at 1:33 PM186 commentsview on HN

Comments

himata4113today at 2:25 PM

This made me realize that obsidian is *not* opensource, but in a way obsidian made me feel like it was opensource. Obviously now that I researched it, it is quite obvious that it is not, but still it 'feels' like it should be opensource.

show 9 replies
UnnoTedtoday at 3:36 PM

AI'm building a native version[0] of Obsidian in Qt6 (QWidgets, cpp), replicating the markdown editor takes a while, there are so many ways of corrupting the file or losing the rendered markdown style... but its getting there[1] and its lightweight, using about 15mb ram, no gpu and barely uses any cpu when the cursor or scroll moves, like a text editor should be.

Still need to render widget tables, lists and syntax highlighting for code blocks for a basic modern notepad, i'm not sure about open sourcing it, seems like a waste of time nowadays but it'll be free to use.

[0]: https://i.imgur.com/ro9Zq9w.png [1]: https://i.imgur.com/pbJcTQF.gif

show 4 replies
ocimbotetoday at 2:27 PM

I wouldn't show it as an alternative to Obsidian though. It shares MD files with it and both are supposedly about note taking ("supposedly" is for Obsidian, I haven't tried Files.md yet), but Files.md seems to have its own way of making the users work with their thoughts, notes and knowledge altogether.

When I read "an alternative", I assumed feature-parity and API compatibility. But what I found out was entirely different and much more interesting.

I'll give it a try, thanks for sharing your year-old work!

show 4 replies
Ifkaluvatoday at 3:45 PM

It’s interesting to me that it says that in some versions of second brain:

“Second brain grows, but first brain doesn’t get smarter.”

Something I remember Tiago Forte said, which turned me off of his partículas brand of a second brain, is that his goal is to “remember nothing”, and have the second brain surface exactly the context necessary at the moment, which he would proceed to read and ingest.

That sounds terrible to me :) it’s like “we don’t need to remember things if we can google them”.

I much prefer this author’s vision of using the second brain to strengthen the first brain.

show 2 replies
zakirullintoday at 2:12 PM

I believe that not only you should own your data in plain files, but also you should own the software that opens those files.

So that your files and tools can grow together, fully under your ownership, through the ages.

The app can be easily tweaked for your own needs via an LLM - code is optimized for that.

P.S. And Golang seems to be great fit for this kind of software.

show 2 replies
rahilbtoday at 3:21 PM

Lots of Markdown enthusiasts in the thread... if you want to sync your markdown tasks to Reminders.app please pay me some money for the privilege: https://turquoisehexagon.co.uk/remindersync

or just vibe your own solution :)

prependtoday at 3:06 PM

This is neat, but I need a non-server-side program for this. I want everything local and running for the next 20+ years.

show 4 replies
Mobius01today at 5:41 PM

Timely, just this morning I took an interest in Obsidian and the immediate query about it being open source returned a disappointing “no”. So count me in to try this one.

RivoLinktoday at 2:48 PM

Same idea, but directly inside your terminal: https://github.com/RivoLink/leaf

show 1 reply
smokeltoday at 3:30 PM

Interesting. I recently "vibe-coded" my personal Obsidian clone, because I want proper Emacs keybindings, and Obsidian does not support those, not even through extensions.

I do not know what to do with my pet project. I'm using it myself, and it has tons of futures that took quite some effort to get right. For example, WYSIWYG table editing is not trivial, and Claude Opus agrees with me, in the sense that it could not manage it (at all) by itself.

Open-sourcing it is an option, but I don't look forward to negative feedback. If anyone else wants Emacs keybindings in Obsidian, I will change my mind :)

show 1 reply
jwillmertoday at 5:22 PM

This is great. I build a Ai status page [1] based around MD files and included obsidian as option. Will look to support this as well.

[1]: https://github.com/jwillmer/ai-status

dilawartoday at 2:04 PM

Nice project. People may also want to checkout Tiddlywiki.

show 4 replies
trvztoday at 2:34 PM

To edit Markdown files I want a nice simple native app.

We had those already more than a decade ago. Personally, I fondly remember Mou.

Obsidian has heavy Electron vibes, and Files.md is several steps more into the wrong direction.

The name is also bad. It feels like it was chosen because someone already had the domain.

show 1 reply
jedimasterttoday at 2:59 PM

This looks awesome, and I've been waffling about moving from Notion to something local/markdown based for a while. My only issue is that I really like using "databases"/tables, specifically for moving through processes ticket-style, in Notion. Does anyone know if there's something similar elsewhere? I'm not familiar with the knowledge-base/wiki space, I just kinda fell into notion.

show 1 reply
backscratchestoday at 2:46 PM

I use .MD files, helix terminal editor with a markdown LSP called markdown-oxide that replicates the obsidian feature set (like bidirectional links, tags, making new notes automatically, two keys get you from a in-line footnote to the definition and back again, etc), and rumdl which is a super efficient and customizable markdown linter and formatter (semantic line breaks far the win!) . Since it is all helix I can jump around a huge web of interlinked files very quickly with only a few key presses, as well as inside a document and manipulate them en masse or in minute detail all with only a few taps. All of your standard open source terminal tools work with it, difftastic, bat/cat, zoxide/CD, ripgrep, fzf, git, LLMs, encryption, sync, etc etc. I use yazi for a visual filepicker and zellij for tabs. Run it on a server and connect from any computer in the world without downloading a single thing. I sometimes make use of two tools called rucola and tree-md for looking at prettier versions of the texts and seeing stats about how they interact. All open source of course!

There is no better interface for text than a terminal, and we are in the golden age. Despite being extremely powerful, this setup will run on resource constrained machines.

show 2 replies
levmiseritoday at 4:25 PM

The '... building this for 5 years' definitely resonates. Text editors are a pitfall of hidden complexities!

It looks and feels great, congratulations for getting this out.

show 1 reply
helterskeltertoday at 4:02 PM

I like the blurb about your ZK being something which can actually hold you back. I encounted the same issue myself and found that ZK is not always the best fit for me.

I find the best thing to do when studying something is to go over your material, internalize and synthesize it in an essay. If you can't create an original essay which perfectly replicates the knowledge you want to understand then you almost certainly don't understand it perfectly.

Alternatively, create a detailed flow chart using subcharts if you have to. (Graphviz/dot is good for this)

armsawtoday at 2:04 PM

Is there a way to follow inline links from a mobile device? Doesn’t seem to work for me in mobile Safari.

show 1 reply
bityardtoday at 4:01 PM

Heh, the author admitted that he got tired of what I'll call "curating metadata" in Obsidian, so wrote an app that handled more of it automatically.

My take: you probably don't need so much metadata!

I've spent an unreasonable amount of time trying to figure out the perfect knowledge management app for me and honestly, I'm pretty sure I will get a lot of mileage out of something you just throw pages into, search to find it again, and ask AI to summarize/consolidate when you need it again.

denisdev1today at 5:47 PM

I liked it, will try. Good job

nielsbjergtoday at 2:44 PM

There's also https://logseq.com/

conqrrtoday at 3:02 PM

Looks really slick! I've been using Obsidian with git, and am thinking of moving back to the OG solution of simply using a text editor with a git repo. I'm wary of using cloud like google drive or dropbox for sync, especially if I'm using both phone and mobile to edit the same file throughout the day. I doubt using an external cloud really takes care of consistency and there's a possibility of losing data. Me being a developer can take the pain of a button click to git pull and resolve occasional conflicts. To me this is fully solved solution for note taking with tools I already know and trust. Having said that, I'm gonna try Files.md for some inspiration on what I could be missing.

show 1 reply
obsidianbases1today at 3:44 PM

The plugin ecosystem is what really makes Obsidian different from the rest.

While OSS is nice, in theory it allows vibe-coding personalizations, without a clear plugin standard then every update would cause a merge headache.

And there is no lack of text editors.

The first real Obsidian alternative would allow use of existing Obsidian plugins. And I think this one thing could really make an alternative gain traction, with both users and those who contribute to the plugin ecosystem.

amaitoday at 2:32 PM

I'm missing export in https://textbundle.org/ format.

"TextBundle brings convenience back - by bundling the Markdown text and all referenced images into a single file."

show 1 reply
sn0ntoday at 3:48 PM

I’ll use obsidian until I can one shot its replacement with a local llm coding agent. And if it goes away tomorrow AND a solar flare wipes my install but somehow leaves everything else, I’ll use helix and ranger until I can one shot its replacement,… with a local llm coding agent.

RHabtoday at 3:30 PM

I am working on something similar. I was also not aware Obsidian is not open source. Something never clicked for me with Obsidian. Will check out your code later. My repo: https://github.com/HabermannR/Nexidion

theanonymousonetoday at 3:07 PM

Thank you for actually acquiring the .md domain corresponding to your software and avoiding some security holesof the future :)

show 1 reply
coreyh14444today at 2:47 PM

The one thing I need in a solution like this is multi-player mode that includes a simplified review/track-changes system that I can collaborate with my AI on these docs. Proof.sdk from Every Inc has an interesting approach on this. If I had more free time, I'd build it myself!

gawstoday at 5:00 PM

Let us know when this isn't a Chrome-specific tool.

Kovahtoday at 3:15 PM

> Only necessary features, restrictions foster creativity

Interesting. Productivity tools should not force me getting creative to do the simplest things. Ideally, I can make it adapt to my workflow, not the other way around.

show 1 reply
ivanjermakovtoday at 3:55 PM

My note taking endgame is a plain dir with md files and a simple website that gives you fullscreen textarea to view and edit them.

nodeflaretoday at 3:21 PM

Markdown-first tools always end up reinventing each other.

xiaoyu2006today at 4:50 PM

Why will I want to feed my life into LLM

show 1 reply
pgwalshtoday at 3:58 PM

A docker release would be great. Looks like a more modern version of ManyNotes.

show 1 reply
gamander2today at 4:36 PM

Post it again when it works in Firefox.

show 1 reply
tinyhousetoday at 2:52 PM

Looks nice but seems overkill to me to run a Go server to sync with a telegram bot to authenticate. Maybe I don't fully understand the use case.

jklinger410today at 3:18 PM

Only works in Chrome!

show 1 reply
samuelltoday at 3:15 PM

I want something like this, but completely terminal based

show 2 replies
insane_dreamertoday at 4:17 PM

Looks nice! Doesn't work in Safari though, which is a non-starter for me.

show 1 reply
krthrtoday at 1:44 PM

I really like the look and feel!

show 2 replies
qitztoday at 2:20 PM

Nice Project, I really like the look!

show 1 reply
takethebustoday at 2:52 PM

nice, going to point my hermes agent to this instead of obsidian

calebmtoday at 3:00 PM

I love the simplicity.

show 1 reply
riffruff24today at 2:43 PM

another one in the same space: https://helixnotes.com/

show 3 replies
gigatreetoday at 3:42 PM

Big fan of the note up front about how long they’ve been working on it, feel like we’ll be seeing a lot more of that as an anti-slop signal

show 1 reply
FailMoretoday at 3:00 PM

1) Very nice implementation 2) Very nice domain! Did you always own "files.md"? 3) Re storing things on your server, what is the security layer around that?

I have been building a slightly different solution to the same problem. So far I’m pretty happy with the results and I have enough returning users that I think others are too (https://sdocs.dev/analytics).

I’ve built SmallDocs (https://sdocs.dev; Show HN: https://news.ycombinator.com/item?id=47777633).

SDocs is cli (`sdoc file.md`) -> instantly rendered Markdown file in the browser

When you install the cli it gives you the option to add a note in your base agent file (`~/.claude/CLAUDE.md`, etc.). This means every agent chat knows about SDocs and you can say “sdoc me the plan when you’re done with it” and the file will pop open instead of you having to find that terminal session to know it’s done.

Going browser first means you’re not required to install anything to get a great experience.

Despite being in the browser, the content of SDocs rendered Markdown files remain entirely local to you. SDoc urls contain your markdown document's content in compressed base64 in the url fragment (the bit after the `#`):

https://sdocs.dev/#md=GzcFAMT...(this is the contents of your document)...

The url fragment is never sent to the server (see https://developer.mozilla.org/en-US/docs/Web/URI/Reference/F...: "The fragment is not sent to the server when the URI is requested; it is processed by the client").

The sdocs.dev webapp is purely a client side decoding and rendering engine for the content stored in the url fragment.

This also means you can share your .md files privately by sharing the url.

I've enjoyed exploiting the HTML rendering side of things which is possible by displaying Markdown in a browser. I’ve added tagged code blocks that the agent is given documentation on how to use. Eg ```chart or ```mermaid (for mermaid diagrams). These then become interactive elements on the page (mermaid is best example of this currently). See live renderings of these options here - charts gallery: https://sdocs.dev/s/yO3WbxFf#k=arcDBnizla5n437VFAeiQcwlu8kh_..., diagrams gallery: https://sdocs.dev/s/B_Ux11DV#k=KsvheEkiBFai6acnoIJnrOdfVRS5u...

show 1 reply
parwebtoday at 2:56 PM

[flagged]

nave94hntoday at 3:31 PM

[dead]

roland35today at 3:36 PM

[dead]

🔗 View 2 more comments