Smart Taskhub is a project management application that helps teams organize tasks, manage workflows, and collaborate effectively.
- Frontend: React, TypeScript, Vite, Tailwind CSS, Redux Toolkit, TanStack (React Query & Virtual), dnd-kit
- Backend: Play Framework (Scala), Slick, Caffeine, Akka Actors
- Database: PostgreSQL
- Testing: ScalaTest (backend)
- CI: Github Actions
Below is a screenshot of the backend test coverage report generated with sbt-scoverage:
- User Registration (email/password with validation)
- User Login (JWT authentication)
- User Logout
- Google OAuth Login
- JWT Token Management (refresh, auth status)
- Role Management (admin, member)
- User Profile (create, update, view)
- Create Workspace
- List Workspaces
- Update Workspace
- Delete Workspace
- Workspace Members (list, invite, remove)
- Leave Workspace
- Email Invitations
- Create Project/Board
- List Projects
- Get Project Details
- Complete/Close Board
- Delete Board (soft delete)
- Reopen Board
- View Closed Boards
- Project Members Management
- Project Import (JSON)
- Project Export (JSON)
- Create Column
- List Columns with Tasks
- Update Column
- Archive/Restore Column
- Delete Column
- Reorder Columns (drag & drop)
- View Archived Columns
- Create Task
- Update Task (name, description, priority)
- Get Task Details
- Archive/Restore Task
- Delete Task
- Move Task (drag & drop between columns)
- Task Priority (LOW, MEDIUM, HIGH)
- Task Completion Status
- Assign/Unassign Members to Task
- View Archived Tasks
- Create Comment
- List Comments
- Update Comment
- Delete Comment
- Mention Users (@mentions)
- Upload Media (images/videos)
- View Media
- Delete Media
- Cloudinary Integration
- WebSocket Connection
- Real-time Board Updates
- Akka Actor System
- Task Search by Keyword
- Filter by Board
- Paginated Results
- Dark/Light Theme Toggle
- Responsive Design
- Loading States
- Toast Notifications
- URL Preview
- Forgot Password
- Password Reset via Email
- Social Login (GitHub, Microsoft)
- Two-Factor Authentication (2FA)
- Email Verification on Signup
- In-app Notifications
- Push Notifications
- Email Notifications (task assigned, deadlines)
- Mark Notifications as Read
- Create Labels
- Assign Labels to Tasks
- Label Colors
- Filter by Labels
- Create Checklist in Task
- Add Checklist Items
- Toggle Checklist Items
- Delete Checklist
- Due Dates (date picker UI)
- Task Cover Images
- Task Dependencies
- Subtasks
- Copy/Move Task to Another Board
- Board Templates
- Board Background/Theme
- Board Visibility Settings (Private/Public)
- Copy Board
- Watch Board
- Activity Logs
- Task History
- Board Activity Feed
- Sort by Last Updated
- Filter by Date Range
- Filter by Assignee
- Advanced Search Filters
- Calendar View
- Project Analytics/Statistics
- Avatar Upload
- Board Settings Page
frontend/– Frontend source code (UI).backend/– Backend API server.
Each part has its own detailed setup guide:
Below are some captures showcasing key features of the application.
| Create Workspace | Create Board | Board Created |
|---|---|---|
![]() |
![]() |
![]() |
| Create Task | Assign Member to Task | Move Task |
|---|---|---|
![]() |
![]() |
![]() |
| Move Column | Default Board Detail |
|---|---|
![]() |
![]() |
| Import Project | Export Project |
|---|---|
![]() |
![]() |












