Docs

Getting started

Install the desktop app, run the server, and open your first vault.

Baalda is a desktop app plus a sync server. You can run both yourself, or run the app against the managed backend and skip the server entirely. The desktop app is identical either way. The only difference is the server URL you point it at.

Prerequisites

You only need these if you are building from source or running your own server. If you just want to use the app, download a build and skip to the last section.

  • Node.js 22 or newer. Running corepack enable activates the pinned pnpm.
  • Rust and Cargo, from rustup.rs.
  • Docker, which is what runs the Postgres database locally.
  • On Linux only: Tauri's system dependencies plus libdbus-1-dev, the build header for the Secret Service keychain backend that stores your session token.

1. Install dependencies

cd app
pnpm install

2. Start the server

Copy the example environment file and adjust JWT_SECRET before you use this for anything real. db:up starts Postgres in Docker on host port 5439.

cd apps/server
cp .env.example .env
pnpm run db:up
pnpm run migrate
pnpm run dev

That serves the HTTP API on port 3010, with the sync WebSocket at /sync on the same port.

3. Start the desktop app

pnpm run dev:desktop

Run that from the app/ directory. It launches the Tauri app with Vite on port 1420. Open a folder of Markdown files, or create a new one, and start writing.

Would rather not run a server?

Everything above is self-hosted and free. If you would rather skip the backend operations, the managed backend at baalda.com handles multi-device sync, real-time team collaboration and hosted AI. In Settings, set the server URL to https://api.baalda.com for the managed service, or to your own instance.

The desktop app asks whether your notes live on the managed service or your own server before your first sign-in. You can also send your team a link to https://your-server/open/connect and let them click it.

This page is written from README.md in the repository. That document goes further, and it is the one that changes first.

Read README.md on GitHub

Start your team’s brain

Free and open source. No account needed.