Skip to content
Switch branches/tags


David (path) Docker Pulls GitHub

A Trello-like kanban board built with React and Redux.

Client demo (without server features).

Buy Me a Coffee at


  • Create projects, boards, lists, cards, labels and tasks
  • Add card members, track time, set a due date, add attachments, write comments
  • Markdown support in a card description and comment
  • Filter by members and labels
  • Customize project background
  • Real-time updates
  • User notifications
  • Internationalization


Current task

Projects should have Managers who have the ability to create/edit/delete boards. Boards should have their own Members, so members won't see all boards, just those they belong to. Planka will be released after this breaking change.

Future tasks

  • Fetch last data after reconnection
  • Custom fields
  • Public boards
  • Automatic actions


Please note that Planka is NOT released yet, API and database structure may be changed!

Docker Compose

  • Make sure you have Docker and Docker Compose installed and operational.
  • Create docker-compose.yml based on the example. This is the ONLY file you will need. You can create this file on your own machine by copy and pasting the content.
  • Edit BASE_URL to match your domain name or IP address.
  • Edit SECRET_KEY with random value. You can generate it by openssl rand -hex 64.

Download the docker-compose.yml:

curl -L -o docker-compose.yml

Pull images and start services:

docker-compose up -d

Demo user: demo@demo.demo demo


Clone the repository and install dependencies:

git clone

cd planka
npm install

Either use a local database or start the provided development database:

docker-compose -f docker-compose-dev.yml up

Edit DATABASE_URL in .env file if needed, then initialize the database:

npm run server:db:init

Start the development server:

npm start

Demo user: demo@demo.demo demo

Tech stack

  • React, Redux, Redux-Saga, Redux-ORM, Semantic UI React, react-beautiful-dnd
  • Sails.js, Knex.js
  • PostgreSQL


Planka is MIT licensed.