Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

85 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rastarbrain

A self hosted second brain application made for agentic workflows.

Who is this for?

Most note-taking apps are bad at tasks, and most task apps are disconnected from where technical work actually happens. Rastarbrain combines both: notes and tasks are first-class, and each task can have its own tmux session attached to it.

Features

  • Items are notes or tasks. Tasks have a lifecycle: tododoingdone. Notes are freeform. Both support tags, attachments, and source URLs.

  • Markdown for tasks and notes with markdown previews.

  • Habits and recurring tasks are first-class. Create a habit like "Exercise" with a schedule (daily, Mon/Wed/Fri, weekly, monthly). rastarbrain generates task instances automatically and tracks completion. Missed a day? It marks it and moves on.

  • An embedded terminal (xterm.js + tmux) lives in the context pane. Run commands alongside your notes. Persistent sessions survive page reloads.

  • Keyboard-driven. Mode-specific shortcuts keep common actions close at hand, including quick search and the command palette.

  • Mobile-ready. Responsive down to phone screens. Touch gestures for triage/review. Tappable buttons where keyboard shortcuts don't exist.

  • Single binary. Download, run, done. No Docker, no Postgres, no Redis. SQLite embedded.

  • Your data, your disk. Everything in ~/.local/share/rastarbrain/. Export anytime as a ZIP.

  • Incoming API to bring external tasks. GitHub notifications support built-in. RSS/Atom feeds. Use Triage mode to triage and import them as tasks. Write your own feeder using the API at POST /api/v1/incoming. See the OpenAPI spec at /api/v1/openapi.yaml for the schema.

  • Workflow modes inspired by Getting things done.

  • tmux sessions get env var for easy agentic workflows. Build your workflows using init cmd and workdir.

Install

Platform Method Architecture
macOS desktop .dmg from GitHub Releases Apple Silicon (arm64)
macOS server Homebrew tap + brew services Apple Silicon (arm64)
Linux server Release installer + systemd user service x86_64 / amd64

macOS desktop

Download the latest .dmg from GitHub Releases, open it, and drag rastarbrain.app into Applications.

The desktop app bundles the Go server as a sidecar — it auto-starts the server and auto-loads the admin token. No setup needed, just launch.

macOS server (Homebrew)

brew tap raghavendra-talur/rastarbrain
brew install rastarbrain
brew services start rastarbrain

After install, open http://127.0.0.1:9002.

If the UI asks for a token, run:

rastarbrain admin-token --raw

The macOS server release archive on GitHub Releases is reserved for packaging automation and is not a direct installer.

Linux server

curl -fsSL https://raw.githubusercontent.com/raghavendra-talur/rastarbrain/main/install.sh | bash

This downloads the latest Linux server package, installs the binary into ~/.local/bin, and starts a systemd --user service.

After install, open http://localhost:9002.

If the UI asks for a token, run:

rastarbrain admin-token --raw

You can also download the release archive manually from GitHub Releases, extract it, and run ./install.sh.

Configuration

Environment variables

Variable Default Description
PORT 9002 Server listen port
HOST 127.0.0.1 Comma-separated bind addresses. 0.0.0.0 for all interfaces, 127.0.0.1,192.168.1.5 for multiple.
DATA_DIR $XDG_DATA_HOME/rastarbrain or ~/.local/share/rastarbrain Base directory for DB, files, and config
DB_PATH DATA_DIR/rastarbrain.db SQLite database path

Auth

On first run, an admin token is generated and saved to DATA_DIR/adminAuth.json.

  • Desktop mode auto-loads that token for you.
  • Server mode can print it with rastarbrain admin-token --raw.
  • You can also create scoped API tokens via Settings or POST /api/v1/tokens.

Data directory layout

~/.local/share/rastarbrain/
  rastarbrain.db          # SQLite database
  adminAuth.json          # auto-generated admin token
  preferences.json        # user preferences (review feeds, triage config, etc.)
  files/                  # uploaded attachments
  terminal-*.log          # tmux session logs
  port.txt                # actual bound port (for Tauri/launchers)

Updates

Update flow depends on how you installed rastarbrain:

  • Linux server (direct installer) — the app can surface update availability in Settings → About. Apply server updates by following the instructions shown there or by re-running the installer.
  • macOS server (Homebrew) — run brew update && brew upgrade rastarbrain && brew services restart rastarbrain.
  • macOS desktop — the built-in Tauri updater handles app updates.

Demo

Representative screens from the app:

rastarbrain hero screen in dark mode Work mode with list, editor, and context panes

Triage mode for sorting incoming work Habit visualization and streak overview

API

Full OpenAPI 3.0 spec at /api/v1/openapi.yaml. Create API tokens in Settings for external clients (CLI scripts, iOS shortcuts, browser extensions).

# Quick capture from the command line
curl -X POST http://localhost:9002/api/v1/items \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"title": "Read that paper", "type": "task", "status": "todo"}'

Stack

Go backend (chi router, SQLite, single binary) + React/TypeScript frontend (Vite, embedded at build time). No external runtime dependencies.

Status

Actively developed.

License

O'SaaSy — MIT with a single addition: you can't resell it as a hosted service.

About

No description, website, or topics provided.

Resources

Contributing

Security policy

Stars

8 stars

Watchers

2 watching

Forks

Releases

Used by

Contributors

Languages