gitmyhub

epicenter

TypeScript ★ 4.7k updated 1d ago

Open-source, local-first apps.

A suite of local-first apps (voice transcription, note-taking, tab manager) that store your data as plain files on your own machine and sync across devices with end-to-end encryption, no cloud lock-in.

TypeScriptSvelteTauriSQLiteTailwind CSSsetup: moderatecomplexity 3/5

Epicenter is a collection of open-source, local-first apps that store everything in a single folder on your own machine. Notes, voice transcripts, and chat histories live as plain text files and a SQLite database that you control. Because the data stays on your device, you can open it with other tools, search it with standard command-line tools, version it with Git, or host it wherever you like.

Sync across your devices works through a technology called Yjs CRDTs, which lets multiple devices merge changes without conflicts. The sync server acts only as a relay, meaning your content is encrypted on the device before it leaves, and the server never sees what you store. The plain text and SQLite files on disk are a by-product of that sync layer, not the primary storage, which means they are always up to date and human-readable.

The ecosystem currently includes three apps. Whispering is a desktop application that lets you press a keyboard shortcut, speak, and get text transcribed. It works with your own API key or with a local AI model. Opensidian is a note-taking app with a built-in terminal, end-to-end encryption, and real-time sync across devices. The Tab Manager is a browser extension side panel for organizing browser tabs, with workspace sync and an AI chat feature that can interact with your workspace data.

All three apps are built on a shared library called @epicenter/workspace, which handles the CRDT logic, typed data schemas, encryption, and sync. This library is also available for other developers who want to build their own local-first apps with multi-device sync already handled. The project is built with TypeScript, Svelte, Tauri for the desktop app, and Tailwind CSS. It runs on macOS, Windows, and Linux.

Where it fits