Blackwood

Your daily notes, from everywhere.

A local-first daily notes app that captures text, voice memos, photos, and handwritten notes — then makes all of it searchable through AI.

Features

Everything you need to capture and find your thoughts.

Markdown Daily Notes

One document per day. Write, edit, auto-save. Collapsible sections for easy scanning.

Voice & Photos

Record audio or snap photos. Automatically transcribed and described by AI.

Semantic Search

Find anything across your notes with AI-powered semantic search. Cmd+K to open.

RAG Chat

Ask questions about your notes in natural language. Get answers with source citations.

Weekly & Monthly Views

See your notes aggregated by week or month with AI-generated range summaries.

Daily Digest

Automatic nightly summaries of each day. On-demand summarize for any note.

Location Tagging

Tag daily notes with your location. Reverse-geocoded to show address names.

Web Clipping

Clip any web page into today's note via bookmarklet. Fetches Open Graph metadata.

iOS App

Native iOS client for capturing notes, voice memos, and photos on the go.

Desktop App

Electron wrapper for macOS. Runs Blackwood as a native desktop application.

Raycast Extension

Create daily notes directly from Raycast without switching apps.

Obsidian Import

Bulk import your existing daily notes from Obsidian into Blackwood.

Telegram Bot

Text, voice, and photos from Telegram. Uses long polling — no public URL needed.

WhatsApp Integration

Send text, voice, or photos via WhatsApp. They appear in today's note.

Granola Meeting Notes

Auto-import meeting notes from Granola via MCP with summaries, attendees, and transcripts.

Viwoods Handwriting

Import handwritten notes from Viwoods AIPaper. OCR'd automatically.

Local-First & Secure

SQLite + markdown on disk. TOTP authentication. Optional HTTPS/TLS. Your data stays yours.

PDF Export

Download any daily note as a clean, readable PDF.

Offline Support

Works offline. Entries are queued and synced when the server is reachable.

Themes & Preferences

Dark, light, or system theme. Timezone-aware dates. Configurable per user.

How It Works

Up and running in under a minute.

1

Download

Grab the latest release for your platform — CLI binary, desktop app, or iOS.

2

Run setup

Run blackwood setup to create directories, store your API key, and generate a config.

3

Open and capture

Open the web UI, desktop app, or iOS app and start writing.

# Download the latest release curl -L https://github.com/csweichel/blackwood/releases/latest/download/blackwood_darwin_arm64.tar.gz | tar xz # Interactive setup (creates config, stores API key) ./blackwood setup # Start the server ./blackwood --config ~/.blackwood/config.yaml

Architecture

A Go backend serving web, desktop, and mobile clients over a single port.

┌─────────────────────────────────────────────────┐ │ Clients │ │ Web UI (React) · Electron · iOS · Raycast │ │ Calendar · Editor · Search · Chat · Week/Month │ └──────────────────────┬──────────────────────────┘ │ Connect-RPC ┌──────────────────────┴──────────────────────────┐ │ Go API Server │ │ │ │ DailyNotesService · ChatService · ImportService│ │ SearchService · DigestService · AuthService │ │ WhatsApp · Telegram · Granola Sync · Clipper │ ├─────────────────────────────────────────────────┤ │ AI Pipelines │ │ Whisper (audio) · gpt-5.2 (vision/chat/OCR) │ │ text-embedding-3-small (semantic index) │ ├─────────────────────────────────────────────────┤ │ Storage │ │ Markdown files notes/YYYY/MM/DD/index.md │ │ Attachments notes/YYYY/MM/DD/<file> │ │ SQLite (entries, conversations, embeddings) │ └─────────────────────────────────────────────────┘

Installation

Download the pre-built binary, desktop app, or iOS app.

# macOS (Apple Silicon) curl -L https://github.com/csweichel/blackwood/releases/latest/download/blackwood_darwin_arm64.tar.gz | tar xz # Interactive setup ./blackwood setup # Run the server ./blackwood --config ~/.blackwood/config.yaml
# macOS (Intel) curl -L https://github.com/csweichel/blackwood/releases/latest/download/blackwood_darwin_amd64.tar.gz | tar xz # Interactive setup ./blackwood setup # Run the server ./blackwood --config ~/.blackwood/config.yaml
# Linux (x86_64) curl -L https://github.com/csweichel/blackwood/releases/latest/download/blackwood_linux_amd64.tar.gz | tar xz # Interactive setup ./blackwood setup # Run the server ./blackwood --config ~/.blackwood/config.yaml
# Download the macOS desktop app (.dmg) from GitHub Releases github.com/csweichel/blackwood/releases # The Electron wrapper connects to your running Blackwood server. # Start the server first, then open the desktop app.
# Build from source (requires Xcode) cd ios && open Blackwood.xcodeproj # The iOS app connects to your Blackwood server over your local network. # Configure the server address in the app settings.