Kurir / Getting Started

Getting Started

Kurir is a self-hosted email client that gives you a calmer, more focused email experience. It connects to your existing email provider via IMAP and SMTP — without handing your data to a third party.

How it works

  1. Connect — Enter your email credentials (stored encrypted with AES-256-GCM on your server).
  2. Sync — Kurir fetches your emails via IMAP using a batched UID delta strategy.
  3. Screen — New senders land in the Screener. You decide who gets through.
  4. Read — Approved emails appear in your Imbox, Feed, or Paper Trail, categorized the way you choose.

The four views

Prerequisites

Before installing Kurir, make sure you have:

Quick start

Kurir offers three deployment options depending on your setup:

A single curl command that provisions everything on a fresh server — secrets, HTTPS, database, and all services.

curl -fsSL https://raw.githubusercontent.com/cfarvidson/kurir-server/main/install.sh | sudo sh

Option B: Docker Compose (manual)

Same stack as the installer, but you configure the environment file yourself.

cp .env.production.example .env
# Edit .env with your domain and generated secrets
docker compose -f docker-compose.production.yml up -d

Option C: Kamal (multi-host)

For deploying across multiple Tailscale-connected servers with a private Docker registry.

kamal setup    # First deploy
kamal deploy   # Subsequent deploys

Each option is covered in detail in the Installation guide.

What’s next