scrumboy
Self-hosted kanban & project management with shareable boards, voice commands, sticky-notes, multi-language and MCP support
What is it?
What it is
A self-hosted project management and issue-tracking solution with Kanban boards, real-time collaboration, MCP-compatible client support, and customizable workflows.
Why it exists
To provide a privacy-focused, self-hosted alternative to SaaS tools, enabling teams and individuals to manage projects without vendor lock-in or data privacy concerns.
Who should use it
Self-hosted project management teams requiring privacy, real-time collaboration, AI integrations (MCP), multi-language support, and customizable workflows. Ideal for small to medium teams or solo developers avoiding SaaS tools.
Who should avoid it
Users preferring fully managed SaaS solutions, lacking technical expertise for setup/maintenance, or not needing advanced features like MCP, encryption, or real-time features.
How it works
A quick walkthrough in plain English
How scrumboy works
Step 1 of 3
You interact with it
Open scrumboy, send a request, or connect it to your stack.
Features
Advantages
- Self-hosted and privacy-focused
- No vendor lock-in (not tied to SaaS)
- Combines simplicity of Kanban with structured systems (roles, sprints, audit trails, customizable workflows)
- Real-time collaboration
- Multi-language support (23 languages)
- PWA / Web Push for excellent mobile UX
- Anonymous boards for quick sharing (no setup)
- MCP compatibility for AI agents and automation
- Webhooks for server-side integrations
- Audit trail for tracking changes
- Backup and import/export functionality
- Customizable workflows and tags
- Sprints for agile planning
- 2FA for enhanced security (when encryption key is configured)
- Voice commands and sticky notes for enhanced usability
- Designed for self-hosted, small to medium teams, and solo builders
Disadvantages
- AGPLv3 license may require sharing modifications when used as a network service
- Webhooks and MCP JSON-RPC endpoint are only available in full mode (not anonymous)
- 2FA and password reset require an encryption key; losing the key breaks access to encrypted auth/security data
- In anonymous mode, full-scope import is not allowed (only current board can be imported into)
Installation
docker
docker run -d \ --name scrumboy \ -p 127.0.0.1:8080:8080 \ -v scrumboy-data:/data \ ghcr.io/markrai/scrumboy:latest
native
go run ./cmd/scrumboy
compose
services:
scrumboy:
image: ghcr.io/markrai/scrumboy:latest
container_name: scrumboy
ports:
- "127.0.0.1:8080:8080"
volumes:
- ./data:/data
restart: unless-stopped
# then run:
# docker compose up -dFAQ
How do I run Scrumboy using Docker?
Use the provided Docker commands to pull the image from GitHub Container Registry and run it with a volume for persistent data (e.g., `docker run -d --name scrumboy -p 8080:8080 -v scrumboy-data:/data ghcr.io/markrai/scrumboy:latest`).
What is the encryption key used for, and how do I generate it?
The encryption key enables 2FA and password reset. Generate it with `openssl rand -base64 32` and set it via environment variables (e.g., `export SCRUMBOY_ENCRYPTION_KEY=...`).
How do I set up OIDC/SO login?
Configure the four required environment variables (`SCRUMBOY_OIDC_ISSUER`, `SCRUMBOY_OIDC_CLIENT_ID`, `SCRUMBOY_OIDC_CLIENT_SECRET`, `SCRUMBOY_OIDC_REDIRECT_URL`) and optionally set `SCRUMBOY_OIDC_LOCAL_AUTH_DISABLED=true` for SSO-only mode.
How can I enable HTTPS?
Set `SCRUMBOY_TLS_CERT` and `SCRUMBOY_TLS_KEY` environment variables with valid certificate and key files to enable HTTPS.
How do I use the API or set up webhooks?
Create API tokens via `/api/me/tokens` for MCP access. For webhooks, register URLs in `/api/webhooks` with desired events (e.g., `todo.assigned`).
How do I export or import projects/data?
Use the export/import JSON feature in Full mode, choosing Replace, Merge, or Create Copy modes to manage projects.
Featured in Videos
YouTube tutorials and walkthroughs for scrumboy
s6
1,671,961 views
Starts at 00:00
Alternatives
Similar projects ranked by category, topics, and text overlap.