Thanks for your interest in contributing! Here's how to get started.
- Prerequisites: Go 1.24+, Node.js 22+
- Clone the repo:
git clone https://github.com/tcarac/taskboard.git cd taskboard - Build:
make build
- For frontend development:
# Terminal 1: backend go run ./cmd/taskboard start # Terminal 2: frontend dev server (hot reload, proxies API to :3010) cd web && npm run dev
- Fork the repo and create a branch from
main - If you've added functionality, update the README if applicable
- Make sure
make buildsucceeds - Run
go test ./...and ensure all tests pass - Open a PR against
main
Use descriptive branch names:
feat/kanban-swimlanesfix/ticket-drag-dropdocs/mcp-setup-guidechore/update-deps
Follow Conventional Commits:
feat: add swimlane support to kanban board
fix: prevent duplicate ticket numbers on concurrent creation
docs: add MCP setup instructions for Cursor
chore: upgrade Go to 1.25
- Use the provided issue templates (Bug Report or Feature Request)
- Include steps to reproduce for bugs
- Include your OS and
taskboard --helpoutput
- Go: follow standard
gofmtformatting. No linter overrides. - TypeScript/React: follow the existing patterns in
web/src/. Noanytypes. - SQL: use snake_case for column names, uppercase for keywords in migrations.
By contributing, you agree that your contributions will be licensed under the MIT License.