Rungu — Listen. Prioritize. Build.
Lightweight, self-hosted feedback board. Collect feature requests, bug reports, and suggestions from your users — with voting, commenting, and prioritization. Built with Rust + SvelteKit.
- Multi-provider auth — Google, GitHub, Keycloak (ENV-driven, mix-and-match)
- Email-based identity — same email across providers = one user
- Vote & comment — upvote the features you want
- Image attachments — screenshots and mockups on posts (PNG/JPEG/WebP/GIF, max 10MB)
- Categories & status — feedback, bug, feature, question → open, planned, in progress, done
- Full-text search — FTS5-powered search across all posts
- Dark mode — light/dark/system theme toggle
- Keyboard shortcuts — full board navigation without a mouse
- MCP server — 15 AI agent tools for Claude Code, Cursor, Windsurf
- REST API — full CRUD for posts, votes, comments, attachments
- Dual database — SQLite (default) or PostgreSQL via
DATABASE_URL - Single binary — embedded SPA, Docker ready
# Docker (recommended)
docker compose up -d
# → Frontend: http://localhost:3000
# → Swagger: http://localhost:3000/swagger-ui
# Or build from source
cargo build --release
./target/release/rungu --db rungu.db serve --listen 0.0.0.0:3000
# Create your first project
./target/release/rungu --db rungu.db project-add "My App" --slug myapp# .env
RUNGU_SECURE_COOKIE=false # allow login over plain HTTP
APP_URL=http://localhost:3000# Copy .env.example to .env
cp .env.example .env
# Configure auth providers (leave empty to disable)
GOOGLE_CLIENT_ID=your-google-client-id
GOOGLE_CLIENT_SECRET=your-google-secret
GITHUB_CLIENT_ID=your-github-client-id
GITHUB_CLIENT_SECRET=your-github-secret
KEYCLOAK_URL=https://auth.example.com
KEYCLOAK_REALM=codecoradev
KEYCLOAK_CLIENT_ID=rungu
KEYCLOAK_CLIENT_SECRET=your-keycloak-secret| Crate | Purpose |
|---|---|
rungu-proto |
Wire types (Post, Vote, Comment, User, Project) |
rungu-core |
Storage, business logic, SQLite queries |
rungu-auth |
Multi-provider OAuth + JWT session |
rungu-api |
REST API routes (Axum) |
rungu-mcp |
MCP server (stdio JSON-RPC 2.0) |
rungud |
Daemon binary (CLI: rungu) |
rungu serve --db rungu.db --listen 0.0.0.0:3000
rungu project-add "My App" --slug myapp
rungu project-list
rungu healthcheck
rungu mcpSee CLI Reference for full options.
⚠️ Experimental — tool handlers return stub data. Full implementation tracked in #28.
12 tools available via stdio for AI coding agents:
list_projects,get_projectlist_posts,get_post,create_post,update_post_statusvote_post,search_postslist_comments,add_commentget_stats,get_trending
Apache-2.0