Synapse OS
Your notes, tasks, and projects, connected, and on your own machine.
Synapse is a local-first personal productivity app for one user, with notes stored as plain Markdown files, tasks and projects, and local AI through Ollama. It is a from-scratch rebuild of Second Brain OS, written by hand to learn how it all fits together.
What Synapse is
Four parts that work together
One app for the things I already juggle every day. All four are planned. None is finished yet.
Notes
Plain Markdown files in a folder are the source of truth. They link to each other with [[links]] and can be searched.
Tasks
Status, priority, start and due dates, and urgency worked out from the date. Deleted tasks go to a trash first.
Projects
Every task belongs to a project, and notes can link to one. Projects are archived, not deleted.
Local AI
Ollama on localhost suggests things such as task dependencies. I accept or dismiss each suggestion.
Workflow visualiser
Three planned ways to see your work
Tasks grouped by due date, a timeline of work over time, and a graph connecting notes, tasks and projects.
Conceptual illustration. This is not a screenshot. The visualiser does not exist yet, and the data below is made up.
Why local-first
Your data stays yours
The design keeps everything on the machine it runs on. These are design goals for the finished app, not claims about software that does not exist yet.
- Local storageData lives in a folder outside the code repository, not in someone else's cloud.
- Markdown portabilityNotes are plain text files that any editor can open, with or without Synapse.
- No required accountOne user, one machine. Any login is planned as an optional extra.
- Intended privacy modelLocal AI runs through Ollama on localhost, so notes are not sent to an outside service. This has not been security-audited.
Built by hand
Learning by rebuilding, not by generating
I already use Second Brain OS (opens in a new tab). Rebuilding something I know well lets me focus on how it is built instead of what to build.
I write the implementation myself. AI is a tutor and reviewer: it explains concepts, points out bugs and suggests tests, and I decide what to keep.
After each working session I add an entry to the learning log: what I did, what I learned and where I got stuck.
How it is built
The stack, and how much of it exists
Mostly planned. Tags show what is already in the repository today.
- TypeScriptIn use
- SQLite, plain SQL and numbered migrationsIn use
- VitestIn use
- Next.js (final decision pending before the first UI task)Planned
- Tailwind CSSPlanned
- SQLite FTS5 searchPlanned
- OllamaPlanned
- ZodPlanned
- PlaywrightPlanned
Roadmap
October 2026 to June 2027
Nine phases, 38 tasks. Planned and subject to change. Statuses are updated by hand.
- Planning and stack decisionsDone
- Schema and data layersIn progress
- Tasks, projects and notes pagesPlanned
- Search and safe savingPlanned
- Workflow visualiserPlanned
- Backup and exportPlanned
- Local AI suggestionsPlanned
- Meetings and calendar importPlanned
- Optional login and hardeningPlanned
About the builder
Samuel Rosengarten
I'm a programming student at Cégep Édouard-Montpetit in Quebec. I'm looking for an internship next semester, ideally one that could lead to a junior developer position.
Synapse is where I practise the parts of software that tutorials skip: schemas, migrations, tests and keeping data safe.
Get in touch
Questions, feedback or an internship lead are welcome. Email samrosengarten1@gmail.com, or find me on my GitHub profile (opens in a new tab).