MCPSERV.CLUB
Planka

Planka

Self-Hosted

Collaborative Kanban boards with real‑time sync

Active(98)
10.8kstars
0views
Updated 9 days ago
Planka screenshot

Overview

Discover what makes Planka powerful

Planka is a self‑hosted, open‑source task management platform that emulates the familiar Kanban workflow while offering rich developer hooks. At its core, Planka exposes a GraphQL API for CRUD operations on boards, lists, cards, and users, enabling tight integration with custom tooling or CI/CD pipelines. The application is written in **TypeScript** and follows a modular monorepo structure, separating the backend (NestJS‑based API server) from the frontend (React with Redux Toolkit and Material‑UI). This split allows developers to replace or extend either layer independently while still benefiting from shared types and schema definitions.

Backend

Frontend

Database

Containerization

Overview

Planka is a self‑hosted, open‑source task management platform that emulates the familiar Kanban workflow while offering rich developer hooks. At its core, Planka exposes a GraphQL API for CRUD operations on boards, lists, cards, and users, enabling tight integration with custom tooling or CI/CD pipelines. The application is written in TypeScript and follows a modular monorepo structure, separating the backend (NestJS‑based API server) from the frontend (React with Redux Toolkit and Material‑UI). This split allows developers to replace or extend either layer independently while still benefiting from shared types and schema definitions.

Architecture

  • Backend: NestJS framework powered by TypeScript, leveraging decorators for routing and dependency injection. The service layer uses TypeORM to interact with a PostgreSQL database, providing a robust ORM that supports migrations and complex queries. Real‑time collaboration is achieved through Socket.IO integration, delivering instant updates to all connected clients. Authentication relies on OpenID Connect, making it straightforward to integrate with corporate IdPs such as Keycloak or Azure AD.
  • Frontend: React 18 application with TypeScript, using Redux Toolkit for state management and React Query for server‑state synchronization. The UI is built with Material‑UI, ensuring a responsive design that works on desktops and tablets. Markdown rendering is handled by remark and rehype, allowing users to format card descriptions with full markdown support.
  • Database: PostgreSQL is the default datastore, chosen for its ACID compliance and support for JSONB columns that store card metadata. The schema is versioned with TypeORM migrations, simplifying upgrades in production.
  • Containerization: A single Docker Compose file bundles the API server, PostgreSQL, and a reverse‑proxy (NGINX) with TLS termination. Docker images are pre‑built on GitHub Container Registry, enabling quick deployment across Kubernetes or vanilla Docker hosts.

Core Capabilities

  • GraphQL API: Full CRUD for boards, lists, cards, comments, and attachments. The schema is documented in the /docs folder and can be introspected via GraphQL Playground.
  • Webhooks & Events: Exposes a webhook system for external services to listen to card movements, status changes, or comment additions. Developers can register custom endpoints that receive JSON payloads.
  • Plugin System: A lightweight plugin architecture allows injecting new resolvers, middleware, or UI components. Plugins are published as NPM packages and can be enabled via a configuration flag.
  • Internationalization: The frontend supports i18n through react-i18next, and the backend exposes locale‑aware error messages. Adding a new language is as simple as adding a JSON file to the locales directory.

Deployment & Infrastructure

Planka is designed for self‑hosting on any infrastructure that supports Docker or Kubernetes. The official Helm chart (under development) will simplify multi‑node deployments, while the Docker Compose setup works out of the box on VPS or cloud instances. For scalability, the API can be horizontally scaled behind a load balancer; PostgreSQL can be upgraded to a managed cluster or sharded if needed. Persistent storage is handled via Docker volumes, and backup scripts are provided in the repo to dump the database and upload it to S3 or other object stores.

Integration & Extensibility

  • RESTful fallback: While GraphQL is primary, a REST layer exists for legacy clients.
  • OAuth & SSO: Integration with any OpenID Connect provider is supported out of the box.
  • Custom Actions: Developers can create custom card actions that trigger serverless functions or external APIs.
  • Export/Import: JSON and CSV export/import tools let you migrate data between instances or integrate with other project management suites.

Developer Experience

The documentation is split into concise sections: Installation, Configuration, Development, and API Reference. Each section contains best‑practice guidelines, environment variable explanations, and migration notes. The community is active on Discord and GitHub Discussions, providing quick feedback loops for contributors. Licensing (Fair Use) ensures that developers can fork and modify the code without worrying about restrictive copyleft clauses, while an optional commercial license offers enterprise features such as advanced analytics and dedicated support.

Use Cases

  • In‑house project tracking: Companies can host Planka on their internal network, ensuring data residency and compliance with GDPR or HIPAA.
  • Developer tooling: CI/CD pipelines can query the GraphQL API to create cards from build failures or pull request statuses.
  • Education: Universities can deploy a shared Kanban board for class projects, integrating with campus authentication systems.
  • Open‑source collaboration: Maintainers can host a public instance that mirrors the issue tracker, allowing contributors to move issues through custom workflows.

Advantages

  • Performance: TypeScript + NestJS gives a fast, type‑safe runtime; Socket.IO ensures low‑latency updates.
  • Flexibility: The plugin system and GraphQL schema allow deep customization without touching core code.
  • Licensing: The Fair‑Use license permits commercial use and modification without the need for open‑source compliance, making it attractive for enterprises.
  • Community & Support: Active contributors and a clear roadmap mean that bugs are addressed quickly, and new features arrive regularly.

Planka offers developers a full‑stack, self‑hostable Kanban solution that balances ease of deployment with the ability to extend and integrate into complex workflows.

Open SourceReady to get started?

Join the community and start self-hosting Planka 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
NOASSERTION
Stars
10.8k
Technical Specs
Pricing
Open Source
Docker
Official
Supported OS
LinuxDocker
Author
plankanban
plankanban
Last Updated
9 days ago