MCPSERV.CLUB
Kanboard

Kanboard

Self-Hosted

Simple self‑hosted Kanban for focused project management

Active(92)
9.2kstars
0views
Updated 3 days ago
Kanboard screenshot 1
1 / 5

Overview

Discover what makes Kanboard powerful

Kanboard is a lightweight, self‑hosted Kanban task manager written in PHP that embraces the principles of minimalism and simplicity. From a developer’s perspective, it offers a clean MVC architecture with a single‑file entry point (`index.php`) that routes all requests through the `Router` component. The core logic is split into well‑defined modules (tasks, projects, notifications) that expose both a RESTful API and a set of PHP hooks for custom extensions. The application is intentionally feature‑lean, which reduces surface area for bugs and makes the codebase approachable for contributors.

Kanban Board UI

WIP Limits & Auto‑actions

Query Language & Filters

Attachments & Markdown

Overview

Kanboard is a lightweight, self‑hosted Kanban task manager written in PHP that embraces the principles of minimalism and simplicity. From a developer’s perspective, it offers a clean MVC architecture with a single‑file entry point (index.php) that routes all requests through the Router component. The core logic is split into well‑defined modules (tasks, projects, notifications) that expose both a RESTful API and a set of PHP hooks for custom extensions. The application is intentionally feature‑lean, which reduces surface area for bugs and makes the codebase approachable for contributors.

Key Features

  • Kanban Board UI: Drag‑and‑drop columns and tasks with JavaScript (jQuery) while keeping the HTML output server‑side rendered for SEO and accessibility.
  • WIP Limits & Auto‑actions: Columns can enforce work‑in‑progress limits; when exceeded, the UI highlights the column. Developers can define custom actions (e.g., sending emails or moving tasks) via a simple YAML configuration that the engine evaluates on task updates.
  • Query Language & Filters: A lightweight DSL (task.status = "open" AND task.due < now()) powers the search bar and board filters, enabling dynamic SQL queries without exposing raw database access.
  • Attachments & Markdown: File uploads are stored in a configurable directory, while task descriptions support GitHub‑style Markdown rendered by the Parsedown library.

Technical Stack

LayerTechnology
RuntimePHP 8.1+ (CLI & web)
FrameworkCustom MVC, no external framework
TemplatingTwig (optional) or plain PHP templates
DatabaseMySQL / MariaDB, SQLite for dev; uses PDO with prepared statements
FrontendjQuery, Bootstrap 4 (CSS), custom JS for drag‑and‑drop
APIsRESTful JSON endpoints; Webhooks via POST payloads
TestingPHPUnit, Behat (BDD) for UI scenarios

Kanboard’s codebase is intentionally small (< 40 k lines of PHP) to keep the learning curve shallow. The use of PDO abstracts database vendors, allowing developers to swap SQLite for lightweight testing or MySQL for production.

Deployment & Infrastructure

Kanboard is designed for self‑hosting on any LAMP stack. The application requires:

  • PHP extensions: pdo_mysql, gd, curl, mbstring
  • A web server (Apache, Nginx) with URL rewriting enabled
  • Optional Docker image (kanboard/kanboard) that bundles PHP, Nginx, and MySQL in a single container

Because the code is stateless except for database interactions, horizontal scaling can be achieved by load‑balancing multiple application instances behind a reverse proxy and using a shared database. For very large installations, sharding the tasks table or moving attachments to an object store (S3-compatible) is straightforward thanks to the ATTACHMENT_PATH configuration.

Integration & Extensibility

  • Plugin System: Developers can create plugins that hook into events (onTaskCreated, onProjectUpdated) and expose new routes. The plugin API is documented in the official docs and includes lifecycle callbacks (install, uninstall).
  • REST API: Endpoints such as /api/tasks.json support CRUD operations, filtering, and batch updates. OAuth2 authentication can be added via a plugin.
  • Webhooks: Configurable to trigger on task or project events, sending JSON payloads to external services (GitHub, Slack).
  • Custom Fields: Users can add arbitrary fields per task; the backend stores them in a JSON column, allowing developers to query via SQL JSON_EXTRACT.

Developer Experience

The project follows a rigorous pull‑request template, ensuring consistency. Documentation is hosted at docs.kanboard.org and covers everything from architecture to plugin development. The community is active on Discourse, GitHub Issues, and the mailing list. Licensing under MIT allows unrestricted commercial use and modification.

Use Cases

  • Internal Project Tracking: Small teams needing a quick, self‑hosted Kanban board without SaaS subscriptions.
  • CI/CD Integration: Trigger tasks from CI pipelines via the REST API, automatically moving tickets when builds succeed.
  • Custom Workflow Automation: Use WIP limits and auto‑actions to enforce process compliance in regulated environments.
  • Educational Platforms: Deploy a lightweight board for teaching agile practices, with the ability to expose the API to student projects.

Advantages

BenefitExplanation
PerformanceMinimal dependencies and a single‑file router keep memory usage low (≈ 50 MB).
FlexibilityThe plugin architecture allows adding domain‑specific logic without touching core code.
SecurityPHP 8’s strict typing and prepared statements reduce injection risks; the app is audit‑ready.
LicensingMIT license removes any commercial barriers, unlike proprietary SaaS solutions.
Community & SupportActive contributors and comprehensive docs make troubleshooting fast.

In summary, Kanboard offers a developer‑friendly, self‑hosted solution for Kanban task management that balances simplicity with extensibility. Its lightweight PHP foundation, clear API surface, and robust plugin system make it a compelling choice for teams that need full control over their task data while keeping operational overhead low.

Open SourceReady to get started?

Join the community and start self-hosting Kanboard today

Weekly Views

Loading...
Support Us

Featured Project

$30/month

Get maximum visibility with featured placement and special badges

Repository Health

Loading health data...

Information

Category
development-tools
License
MIT
Stars
9.2k
Technical Specs
Pricing
Open Source
Database
Multiple
Docker
Official
Supported OS
LinuxWindowsmacOSDocker
Author
kanboard
kanboard
Last Updated
3 days ago