All-in-one project management and team chat for product teams that want speed without the bloat.
Plan work, track progress, and keep conversations close to the tasks.
- Projects, tasks, and realtime chat in one workspace π§©
- Backend API + modern web frontend out of the box π§±
- Docker-first setup to run locally in minutes π³
- Open architecture for customization and integrations π
- Task planning with lists and workflows β
- Team chat tied to work context π¬
- Realtime collaboration β‘οΈ
- API-first backend for integrations π
- Self-hosted, full-stack codebase π
backend/- Node.js/TypeScript backend API serverfrontend/- React/TypeScript frontend application
The easiest way to run the entire project is using Docker Compose.
- Docker Desktop (or Docker Engine + Docker Compose)
- At least 4GB of available RAM
- Ports 3002, 3003, 5432, 6379, 5672, 15672 available
-
Start all services (can take 5+ min to compile):
cp .env.sample .env docker-compose up
-
Start in detached mode (background):
docker-compose up -d
-
View logs:
docker-compose logs -f
-
Stop all services:
docker-compose down
Once all services are running:
- Frontend: http://localhost:3002 (mapped from container port 3000)
- Backend API: http://localhost:3001
- RabbitMQ Management: http://localhost:15672
Note: Ports 3000 and 5432 are mapped to 3002 and 5433 respectively to avoid conflicts with local services.
The Docker Compose setup includes:
- PostgreSQL (port 5432) - Database
- Redis (port 6379) - Caching
- RabbitMQ (ports 5672, 15672) - Message queue
- Backend (port 3001) - API server
- Frontend (port 3000) - Web application
- Ntfy (port 8080) - Push notifications
Migrations run automatically on first startup. If you need to reset the database:
docker-compose down -v
docker-compose up --build- One-command local setup
- Simplified hosting with custom domains
- Repository cleanup and docs polish

