Show HN: Brainio – Markdown notepad that turns notes into visual mind maps

20 points
1/21/1970
a day ago
by havlenao

Comments


FailMore

I noticed you switched from paid to free? What was behind that decision?

I’m very interested in Markdown related tools, I’m building one myself [1]. How have you found working with the MCP? I went for a CLI tool myself. Have you found that agents have produced anything interesting being able to link documents? /create maps?

[1] https://sdocs.dev, discussed on HN here: https://news.ycombinator.com/item?id=47777633

15 hours ago

havlenao

Because it's my dreamed side project and I had a lot of students using the app. My goal is to make it affordable for everyone.

MCP is ready for this app and I think about delivering deep integration with harnesses (my primary work is R&D applied research in AI).

14 hours ago

drumandbass

How do you handle performance with large documents? I tend to write really long notes with 200+ nodes. Does the mind map view slow down at that scale?

13 hours ago

havlenao

The mind map view uses D3 flextree for layout calculation, and we render only the visible nodes (virtualization). So even with 200+ nodes, the layout stays smooth. On the text editor side, we use Tiptap which handles large documents well. The Yjs binding is optimized to only sync the delta, not the whole document. We're actively working on further graph editor performance improvements, especially around initial render time for large mind maps.

13 hours ago

borlando

Interesting approach. How does the Yjs sync work when two people edit the same node in the mind map view? Do you handle conflicts at the node level or at the text level?

13 hours ago

havlenao

We handle it at the text level using Yjs CRDTs. Each node content is a Y.XmlFragment, so when two people type in the same node at the same time, Yjs merges the changes character by character.Its similar to how Google Docs works. No conflicts, no overwrites.

The tree structure is managed by a separate Yjs data structure. So if one person moves a node while another edits its text.

The sync layer is Hocuspocus (WebSocket server) on top of a NestJS backend. Documents are persisted to PostgreSQL and synced to all connected clients. When you go offline, changes queue in IndexedDB and merge automatically when you reconnect.

The mind map view and text editor view share the same Yjs document. Edits in one view appear instantly in the other, even across different users.

13 hours ago

matoush

I've been looking for a good MCP-enabled note taking app. What can Claude actually do with the 17 tools? Can it create a full mind map from a prompt?

13 hours ago

havlenao

You can ask harness to create a full mind map from a prompt. For example, you can say "create a mind map about machine learning basics" and it will build a new document/mind map.

Currently 17 tools that we cover: Reading: list mindmaps, read document, search across everything, find a specific node with its context. Writing: create new documents, add/edit/delete/move nodes, trash and restore documents. Folders: create folders, organize documents, rename, delete.

A practical example: you can paste a long article into harness and say "summarize this into a Brainio mind map with the key topics as branches." It will create the document and build the structure for you. It works with Claude Desktop, Claude Code, Cursor, Windsurf, or anything that supports MCP.

13 hours ago

gildainovae

Can I import my existing Markdown files? I have about 500 notes in Obsidian and I'd like to try this without starting from scratch.

13 hours ago

havlenao

Not now but its on our roadmap. For now, the fastest way to get started is to paste Mark-down content into a new document. I'd suggest starting with a few notes to see if the mind map approach works for you before committing to a full migration.

13 hours ago

zyconator

How does this compare to something like Logseq or Obsidian with a graph view? What's the main reason to switch?

13 hours ago

havlenao

The main difference is that in Brainio, every note is a mind map. In Obsidian or Logseq you write note and then view connections in a separate graph view. In Brainio the mind map is generated directly from your data structure. You indent text with Tab and it becomes a branch in the mind map. You can switch between text, split, and mind map view with one click. The core value is that each individual document has its own visual mind map.

Brainio has real-time collaboration - it's is built in, there's a built-in MCP server so AI assistants can work with your notes, and it runs as a web app or desktop app without needing to manage a local vault.

The tradeoff is that Obsidian has a much bigger plugin ecosystem and local-first storage.

13 hours ago

miamicholo

amazing job with the text editor! feels good/easy to work with and format! did you code (or vibe i dont care) from scratch or used a library?

20 hours ago

havlenao

Both, the main parts were coded from the scratch. The other features were prototyped with vibe coding, but reworked before implemented to production version

14 hours ago

home8333

This is really cool! What's your inspiration in building this?

a day ago

havlenao

zettelkasten method

a day ago

devansh0718

nice man thats such a cool concept

15 hours ago

havlenao

thanks ;)

14 hours ago

borlandc2

Looks nice!

14 hours ago