---
title: Kanba
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, kanban, react, nodejs, mongodb, minimaliste, trello-alternative, mit]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Kanban, https://github.com/kanba/kanba, https://kanba.io/]
---

# 🪞 Kanba

> **Le Kanban React minimaliste** — frontend React moderne, backend Node.js/Express, MongoDB, idéal pour des déploiements légers en équipe ou en solo.

## 📋 Informations Générales

| Champ | Valeur |
| :--- | :--- |
| **Site web** | [kanba.io](https://kanba.io/) |
| **GitHub** | [kanba/kanba](https://github.com/kanba/kanba) |
| **Licence** | MIT |
| **Langage** | JavaScript (React + Node.js) |
| **Étoiles GitHub** | 91 ⭐ |
| **Dernière MAJ** | 2026-05-19 |
| **Catégorie** | [[cat-kanban\|Kanban]] |

## 📝 Description

**Kanba** est un Kanban **open source et minimaliste** conçu pour les développeurs qui veulent un **clone Trello simple, rapide et moderne**, sans la lourdeur d'un [[app-wekan]] ou la complexité d'un [[app-openproject]]. La stack est volontairement **classique** : **React** (Create React App) pour le front, **Node.js/Express** pour le back, **MongoDB** pour la persistance.

L'interface reproduit le strict nécessaire : **tableaux, listes, cartes, drag-and-drop, étiquettes, membres, descriptions Markdown, dates d'échéance**. Le projet mise sur la **lisibilité du code** (idéal pour des étudiants, contributions ou forks) et sur la **facilité d'extension** (l'API REST est simple et bien organisée).

Pour un **usage personnel ou une petite équipe** (< 10 personnes), Kanba est un excellent choix : la stack est familière (Node + React + Mongo), les builds Docker sont légers (~150 Mo), et le code reste **lisible en moins de 30 minutes** de lecture. Pour des besoins plus poussés (multi-tenants, API riche, marketplace de plugins), mieux vaut se tourner vers [[app-planka]] ou [[app-kaneo]].

## 🚀 Installation

### Option recommandée : Docker Compose

```yaml
services:
  kanba-app:
    image: ghcr.io/kanba/kanba-app:latest
    container_name: kanba-app
    restart: unless-stopped
    ports:
      - "3000:3000"
    environment:
      REACT_APP_API_URL: "http://kanba-api:4000"
    depends_on:
      - kanba-api

  kanba-api:
    image: ghcr.io/kanba/kanba-api:latest
    container_name: kanba-api
    restart: unless-stopped
    ports:
      - "4000:4000"
    environment:
      MONGO_URI: "mongodb://mongo:27017/kanba"
      JWT_SECRET: "changez-cle-jwt-32-chars-minimum"
      PORT: "4000"
      NODE_ENV: "production"
    depends_on:
      - mongo

  mongo:
    image: mongo:6
    container_name: kanba-mongo
    restart: unless-stopped
    command: ["--bind_ip_all"]
    volumes:
      - kanba-db:/data/db

volumes:
  kanba-db:
```

### Installation manuelle (développement)

```bash
git clone https://github.com/kanba/kanba.git
cd kanba
# API
cd server && npm install && npm start
# Front (autre terminal)
cd client && npm install && npm start
```

## ⚙️ Configuration Initiale

1. Démarrer la stack, ouvrir `http://localhost:3000`.
2. Créer le compte administrateur (premier compte = admin).
3. Définir un `JWT_SECRET` robuste (variable d'env du service API).
4. Brancher le **reverse-proxy HTTPS** (Caddy, Nginx) en pointant vers `:3000`.
5. Configurer le **CORS** correctement pour autoriser le domaine public.
6. Activer **Watch** sur le dépôt GitHub (release cycle court).
7. Sauvegardes : dump MongoDB + volume `kanba-db`.

## 🔄 Alternatives

### Open Source
- [[app-planka]] — Kanban React/Redux mature
- [[app-wekan]] — Kanban Node.js complet
- [[app-kanboard]] — Kanban PHP léger
- [[app-kaneo]] — Kanban TypeScript moderne
- [[app-ticky]] — Kanban TypeScript minimal
- [[app-kan]] — Kanban Go
- [[app-vikunja]] — Tasks + Kanban

### Propriétaires
- **Trello** (Atlassian)
- **Asana**
- **Notion Kanban**
- **ClickUp**
- **Linear**
- **Monday.com**

## 🔐 Sécurité

- ✅ Authentification JWT avec `JWT_SECRET`
- ✅ Bcrypt pour les mots de passe
- ⚠️ Pas de 2FA natif : protéger par reverse-proxy + VPN ou 2FA global (Authelia/Authentik)
- ⚠️ CORS à configurer finement pour éviter les abus
- ✅ Exiger HTTPS via reverse-proxy
- ✅ Variables d'environnement pour tous les secrets (jamais de valeurs en dur)
- ✅ Maintenir les images Docker à jour (projet jeune = CVE fréquentes sur Node.js)

## 📚 Ressources

- [Site officiel Kanba](https://kanba.io/)
- [GitHub kanba/kanba](https://github.com/kanba/kanba)
- [Documentation API](https://github.com/kanba/kanba/wiki/API)
- [Démo live](https://demo.kanba.io/)
- [Roadmap](https://github.com/kanba/kanba/projects)

## Pages Liées
- [[cat-kanban]] — Catégorie Kanban
- [[recettes-docker-compose]] — Templates Docker Compose
- [[app-planka]] — Alternative React mature
- [[app-kaneo]] — Alternative TypeScript
- [[app-ticky]] — Alternative TypeScript minimal
