FRANÇAIS - ENGLISH
A modern and intuitive web application for collaborative task management using the Kanban methodology.
NEW: Voice control Manage your tasks with your voice using natural language thanks to the power of AI.
To see what this application looks like before installing it, the easiest way is to try the demo.
Username: admin@yaka.local
Password: Admin123
🗑️ The database is regularly deleted.
- Interactive Kanban Board
- Manage tasks with your voice with AI
- Drag & Drop for moving cards smoothly
- Secure Authentication with JWT
- Detailed Cards with title, description, checklist, priority, assignee, labels, due date, comments
- Search and filters
- Unlimited Users
- Role Management (administrator / member)
- Column Management to add as many columns as needed
- Colored Label Management for categorization
- Event History to track who did what
- Archive Management to never lose anything
The simplest method to use Yaka without hassle.
git clone https://github.com/Yajusta/Yaka.git
cd Yakacp .env.sample .envAnd fill in the necessary environment variables.
The backend container runs as the unprivileged uid 10001, and ./data/ is bind-mounted into it. That directory (and everything in it) must belong to that uid, otherwise SQLite opens the board databases read-only and any write fails with sqlite3.OperationalError: attempt to write a readonly database.
mkdir -p data
sudo chown -R 10001:10001 data/The directory itself matters as much as the .db files: SQLite writes -journal/-wal siblings, and provisioning a new board creates a new file.
docker compose build
docker compose up -ddocker compose down
docker compose build
docker compose up -dTODO: Create a public Docker image that won't require cloning the project.
If you want to run it manually, that's possible too.
git clone https://github.com/Yajusta/Yaka.git
cd YakaCopy/paste the .env.sample file to .env and fill in the configuration parameters for your SMTP server.
Example:
# Parameters for email sending
SMTP_HOST = "smtp.resend.com"
SMTP_PORT = 587
SMTP_USER = "resend"
SMTP_PASS = "re_xxxxxxxxxxxx"
SMTP_SECURE = "starttls" # values: 'ssl'|'starttls'|'none'
SMTP_FROM = "no-reply@domain.com"The LLM model that will be used to analyze natural language requests. Leave empty to disable the feature.
## AI features (leave empty to disable)
OPENAI_API_KEY=sk-proj-bim-bam-boum
OPENAI_API_BASE_URL=https://api.openai.com/v1
LLM_MODEL=gpt-5-nano
MODEL_TEMPERATURE=cd backend
uv run uvicorn app.main:app --reloadA virtual environment will be automatically created with all necessary dependencies. The backend will be accessible at http://localhost:8000
cd frontend
pnpm install
pnpm run devThe frontend will be accessible at http://localhost:5173
To check code quality with Trunk:
cd frontend
npm run trunk -- upgrade
npm run trunk -- check --all --no-fixAn administrator account is automatically created during initialization:
- Email:
admin@kyaka.local - Password:
Admin123
Once connected, create a new administrator with your email then delete this default account.
- Frontend Technical Guide - Complete frontend documentation
- Backend Technical Guide - Complete backend documentation
- User Guide - Application user manual
This project is under Non-Commercial License: you can use and modify the application, but without making its use paid without the author's agreement.
For any questions or problems:
- Consult the documentation
- Check existing issues
- Create a new issue if necessary
- Real-time notifications (websockets)
- Attachments
- Reports and analytics
- Public API
- Third-party integrations (Slack, Teams, etc.)
- FastAPI - Modern and performant Python web framework
- SQLAlchemy - ORM for database management
- SQLite - Embedded database
- JWT - Token authentication
- Pydantic - Data validation and serialization
- React - JavaScript library for user interface
- shadcn/ui - Modern and accessible UI components
- Tailwind CSS - Utility-first CSS framework
- Vite - Fast build tool

