Custom Workflows: Shape each project's workflow with customizable columns, colors, and a dedicated Done lane.
$ npx -y skills add markrai/scrumboy --agent claude-code

Runs in seconds. No setup required.
No .env file, TLS certificates, or encryption key are required to start the app.
Scrumboy creates runtime data under ./data by default. The default SQLite database is ./data/app.db, and SQLite may also create app.db-wal and app.db-shm while the server is running.
Pull ghcr.io/markrai/scrumboy:latest (Docker selects the published architecture for your host):
docker run -d \
--name scrumboy \
-p 127.0.0.1:8080:8080 \
-v scrumboy-data:/data \
ghcr.io/markrai/scrumboy:latest
The mounted /data volume preserves Scrumboy data across container recreation. Open http://localhost:8080. For Compose using the published image, persistence, backup, and configuration details, see docs/docker.md.
To build from a local clone instead of pulling the published image:
docker compose up --build
The repository's docker-compose.yml uses build: . and maps ./data to /data.
Open http://localhost:8080.
go run ./cmd/scrumboy
Open http://localhost:8080.
Windows users can download the windows-amd64 executable from GitHub Releases. Run it from a dedicated writable folder (for example %USERPROFILE%\Scrumboy); it starts a local Scrumboy server at http://localhost:8080. For exact artifact filenames, checksum and provenance verification, runtime-data location, and other release-install details, see docs/install-from-releases.md.
macOS users can download Apple Silicon or Intel builds from GitHub Releases. These binaries require macOS 12 Monterey or later. Extract and run ./scrumboy from a dedicated writable folder; it starts a local Scrumboy server at http://localhost:8080. Current macOS release binaries are not Apple-signed or notarized. For exact artifact filenames, checksum and provenance verification, runtime-data location, Gatekeeper/quarantine troubleshooting, and other release-install details, see docs/install-from-releases.md.
Scrumboy includes a native Android client, implemented with Capacitor, under mobile/capacitor. It connects to a running Scrumboy server; it does not replace or start the server. Build it from source. Release builds require HTTPS to that server. Prerequisites, web-payload packaging, Gradle commands, device connection, and optional signing are in docs/android.md.
SCRUMBOY_ENCRYPTION_KEY is set.SCRUMBOY_ENCRYPTION_KEY + SCRUMBOY_PUBLIC_BASE_URL): see docs/smtp.md.audit_events table; todo/member/project/link actions logged (see docs/audit-trail.md).DATA_DIR disaster-recovery backup (uploaded wallpapers and audit_events are omitted); see docs/diagrams/scrumboy_deployment_ops.md./anon creates a throwaway editable board; Anonymous Mode serves a single no-auth board. These are separate from published read-only boards below./_app while project URLs stay unchanged. Anonymous Mode ignores the flag.SCRUMBOY_ENCRYPTION_KEY.SCRUMBOY_MODE=full, default): Auth can be enabled. First user via bootstrap; then login/session. Backup/export, tags, multi-project. Projects can be user-owned (project_members) or anonymous (shareable by URL): /anon (or /temp) creates a throwaway board and redirects to /{slug}.SCRUMBOY_MODE=anonymous): No auth. Landing at /; live deployment at: https://scrumboy.com/In full mode, access is governed by two separate role systems: instance-wide system roles (Owner, Admin, User) and per-project roles. System roles do not grant project access; project access comes only from project membership.
Owner, Admin, and User control instance-wide capabilities such as user management. Assignment rules and permissions: docs/roles-and-permissions.md.
Project access requires project membership. Per-project roles are Maintainer (full project management), Contributor (limited edits, including body editing on cards assigned to them), and Viewer (read-only). Temporary/anonymous boards use a separate link-based permission model instead of these roles. Details: docs/roles-and-permissions.md.
A fresh Scrumboy install needs no environment variables. Set them only when you want to change deployment defaults or turn on optional features (SSO, email, Web Push, TLS, encryption, and similar).
Scrumboy does not automatically load .env files. Inject variables through your shell, process manager, Docker/Compose, or another launcher.
scrumboy is a Claude Code plugin with 1 hand-picked skill, indexed on Flowy in the Product category. Install it with the command on its page. It includes scrumboy-board-operator. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.
Is this plugin yours?
Claim it with GitHubSubmit a pluginPromote it