Roadmap · Website · Docs · Discord
- 👁️ Board Visibility: Control who can view and edit your boards
- 🤝 Workspace Members: Invite members and collaborate with your team
- 🚀 Trello Imports: Easily import your Trello boards
- 🔍 Labels & Filters: Organise and find cards quickly
- 💬 Comments: Discuss and collaborate with your team
- 📝 Activity Log: Track all card changes with detailed activity history
- 🎨 Templates (coming soon) : Save time with reusable board templates
- ⚡️ Integrations (coming soon) : Connect your favourite tools
See our roadmap for upcoming features.
The easiest way to self-host Kan is with Docker Compose. This will set up everything for you including your postgres database.
- Create a new file called
docker-compose.ymland paste the following configuration:
services:
web:
image: ghcr.io/kanbn/kan:latest
container_name: kan-web
ports:
- "3000:3000"
networks:
- kan-network
environment:
NEXT_PUBLIC_BASE_URL: http://localhost:3000
BETTER_AUTH_SECRET: your_auth_secret
POSTGRES_URL: postgresql://kan:your_postgres_password@postgres:5432/kan_db
NEXT_PUBLIC_ALLOW_CREDENTIALS: true
depends_on:
- postgres
restart: unless-stopped
postgres:
image: postgres:15
container_name: kan-db
environment:
POSTGRES_DB: kan_db
POSTGRES_USER: kan
POSTGRES_PASSWORD: your_postgres_password
ports:
- 5432:5432
volumes:
- kan_postgres_data:/var/lib/postgresql/data
restart: unless-stopped
networks:
- kan-network
networks:
kan-network:
volumes:
kan_postgres_data:- Start the containers in detached mode:
docker compose up -d- Access Kan at http://localhost:3000
The application will be running in the background. You can manage the containers using these commands:
- To stop the containers:
docker compose down - To view logs:
docker compose logs -f - To restart the containers:
docker compose restart
For the complete Docker Compose configuration, see docker-compose.yml in the repository.
Note: The Docker Compose configuration shown above is a minimal example. For a complete setup with all features (email, OAuth, file uploads, etc.), you'll need to create a
.envfile with the required environment variables. See the Environment Variables section below for the full list of available options.
- Clone the repository (or fork)
git clone https://github.com/kanbn/kan.git- Install dependencies
pnpm install- Copy
.env.exampleto.envand configure your environment variables - Migrate database
pnpm db:migrate- Start the development server
pnpm devSee .env.example for a complete list of supported environment variables.
We welcome contributions! Please read our contribution guidelines before submitting a pull request.
Kan is licensed under the AGPLv3 license.
For support or to get in touch, please email henry@kan.bn or join our Discord server.

