SmartFlow is a lightweight, intelligent task assignment system designed to improve team productivity by automatically distributing tasks based on skills, availability, workload, and priority.
Built during the Snowstorm Hackathon by Tech4Hack, this project focuses on solving real-world team coordination problems using simple, explainable logic instead of complex black-box AI.
Give it a try and see how it can transform your team's workflow!
In most teams:
- Tasks are assigned manually
- Workload becomes uneven
- Skilled members get overloaded
- There is no visibility into optimal task distribution
This leads to:
- ❌ Inefficiency
- ❌ Missed deadlines
- ❌ Team burnout
SmartFlow introduces a scoring-based task assignment system that:
- Matches tasks with the most suitable team members
- Balances workload across the team
- Considers real-world constraints like skills and availability
- Dynamically rebalances tasks when conditions change
SmartFlow uses a weighted scoring algorithm to evaluate each task-member pair:
Score = (Skill Match * 0.4) + (Availability * 0.3) + (Workload Balance * 0.2) + (Priority Match * 0.1)
- Skill Match → Does the member have required skills?
- Availability → Does the member have time?
- Workload Balance → Is the member already overloaded?
- Priority → How urgent is the task?
- ✅ Smart task assignment
- ✅ Priority-based scheduling
- ✅ Workload balancing
- ✅ Dynamic task rebalancing
- ✅ Simple and clean UI
- ✅ Fully explainable logic (no black-box AI)
SmartFlow can adjust assignments when:
- A team member becomes overloaded
- Availability changes
- Tasks are delayed
Strategy:
- Identify overloaded member
- Select lowest-priority task
- Reassign to next best candidate
- Python
- Flask
- HTML
- CSS
- JavaScript (Vanilla)
- Custom scoring algorithm (no external ML libraries)
SmartFlow/
├── README.md
├── app.py
├── requirements.txt
├── smartflow_engine.py
├── static/
│ ├── script.js
│ └── style.css
└── templates/
├── addTeamMember.html
├── assignedTask.html
├── createTasks.html
├── createTeam.html
├── index.html
└── masterTemplate.html
git clone https://github.com/mgmehra2005/SmartFlow.git
cd SmartFlowpip install -r requirements.txtpython app.pyhttp://localhost:5000
- Add team members with skills and availability
- Add tasks with required skills and priority
- Click Smart Assign
- View optimized task distribution
- Trigger Rebalance to adjust assignments dynamically
Adding team members with skills and availability
Creating new tasks with priority and skill requirements
Smart task assignment in action
This project was built as part of:
Snowstorm Hackathon – Tech4Hack
- Role-based team management
- Real-time updates
- Advanced analytics dashboard
- Machine learning-based predictions
- Integration with tools like Trello / Slack
This is a learning project, but contributions and suggestions are welcome!
Feel free to connect or share feedback:
- LinkedIn: My LinkedIn Profile
Thanks to Tech4Hack for organizing the Snowstorm Hackathon and providing a platform to learn and build.
SmartFlow is not just about assigning tasks —
it’s about making teams work smarter, not harder.