Welcome to TaskMate, an innovative AI-powered solution designed to streamline task management and employee coordination. This system ensures tasks are assigned to the most suitable employees based on their skills and availability, helping organizations enhance productivity and simplify task workflows.
- AI-Driven Task Assignment: Tasks are assigned based on employee skills and availability using the Gemini-1.5-Flash AI model.
- Multi-User Portals: Separate dashboards for Admins, Managers, and Employees.
- Admin Dashboard: Manage employee details (add, edit, and remove employees).
- Manager Dashboard: Create tasks and view task assignments.
- Employee Dashboard: View assigned tasks.
- Trello Integration: Option to import tasks from Trello boards directly into TaskMate.
- Ballerina-Python Flask Integration: Seamless communication between frontend and backend services, ensuring real-time task updates.
-
Frontend:
- Built using React, JSX, and CSS for a modern and responsive UI.
- Vite is used for efficient bundling and faster builds.
-
Backend:
- The backend is powered by Python Flask.
- Ballerina serves as the middleware connecting the frontend to the Flask backend and the AI model.
-
AI Model:
- The Gemini-1.5-Flash AI model processes tasks and assigns them to employees based on their skills and availability.
- Node.js (for running the frontend)
- Python (for the backend)
- Ballerina (for middleware integration)
- Gemini API (export the Gemini API key before running the Python server)
- Trello API (optional, for Trello integration)
-
Clone the repository:
git clone https://github.com/akindu-k/iwb013-team-tricannu.git cd iwb013-team-tricannu
-
Backend Setup:
-
Navigate to the
backend
folder:cd backend
-
Before running the Python server, you need to export the Gemini API Key:
export GEMINI_API_KEY=your-gemini-api-key
-
Run the Python backend on Terminal 1:
python3 index.py
-
-
Ballerina Middleware Setup:
- Navigate to the
ballerina
folder:cd backend/ballerina
- Start the Ballerina service on Terminal 2:
bal run main.bal
- Navigate to the
-
Frontend Setup:
- Navigate to the
frontend
folder:cd frontend
- Install frontend dependencies:
npm install
- Start the frontend on Terminal 3:
npm run dev
- Navigate to the
- Admin Portal: Manage employees by adding, editing, or removing them.
- Manager Portal: Create tasks and let the AI assign them to the most suitable employee.
- Employee Portal: View assigned tasks.
This project is licensed under the MIT License - see the LICENSE file for details.
- Akindu Kalhan - akindu-k
- Thusith Wijewardena - thusithvj
- Dilshan Kularathna - DilshanKularathna
- Kithmina Weerasinghe - KithminaW
- The TaskMate project was developed as part of the team Tricannu for the Innovate with Ballerina.