A full-stack Kanban-style project and task management application built with Angular, Spring Boot, and MySQL.
- User registration and login with secure authentication
- JWT-based authentication with Spring Security
- Manage your projects
- Manage project tasks
- Drag-and-drop kanban board functionality, easy to use
- Advanced search and filtering for tasks and projects
- Add, remove or rename columns dynamically
- Collaborator management: easily add or remove members as an admin
- Assign people to different tasks
- Autherization based on member roles
- Comment on tasks, see what others wrote
- Responsive UI
- Persistent data storage using MySQL
- Lightweight and fast
- Implement Keycloak authentication
- HTTPS
- Change column orders
- Limit Viewer role permissions
- Taskii home page
Backend
- Spring Boot 3
- Spring MVC
- Spring Security 6
- Spring Data JPA
- JWT Token Authentication
- JUnit
- Lombok
- MySQL
- Liquibase
- Docker
Frontend
- Angular
- Angular Material
- RxJS
- HTTP Interceptors
- Bootstrap
- Java 17
- Node.js (currently using v22.17.1)
- Angular CLI (currently using v20.0.3)
- Docker (currently using v28.3.2)
Add an .env file in the /backend folder with the following configuration:
MYSQL_PASSWORD=your-docker-db-password
MYSQL_HOST=your-docker-db-host
MYSQL_DATABASE=your-database-host
KEYCLOAK_ADMIN=your-database-admin-name
KEYCLOAK_PASSWORD=your-database-admin-passwordBoth Keycloak and MySQL will be running in a docker container, so feel free to use whatever values you want here. The compose file will read the values from the .env file.
Backend:
- Start the database and keycloak container
cd backend
docker compose up- Start the spring boot application
./mvnw spring-boot:runFrontend:
cd ..
cd frontend
npm i
ng serveOpen browser at : http://localhost:4200
User Authentication |
Project Management |
Task Creation |
Kanban Board |
Search and Filter |
Add members |
Manage members |
Task Comments |








