All-in-one platform for remote work efficiency, stress management, and productivity optimization.
OptiWork empowers organizations to monitor, motivate, and manage their remote workforce through role-based dashboards, smart task assignment, gamification mechanics, and real-time productivity analytics.
Remote work introduces unique challenges: isolation, unclear performance visibility, stress accumulation, and uneven workload distribution. OptiWork tackles these head-on with a dual-dashboard system built for both HR managers and engineers, giving each role the tools they actually need.
- Full workforce overview with productivity KPIs
- Employee well-being and stress indicators
- Task distribution monitoring across teams
- Performance trends and comparison charts
- Personal productivity metrics and progress tracking
- Task queue with priority breakdown
- Gamification system: XP points, badges, leaderboards, and streaks
- Stress and workload balance indicators
- AI-powered task assignment based on employee availability, skill set, and current workload
- Prevents burnout by detecting overloaded team members
- Ensures balanced and fair distribution across the team
- Points and XP for task completion
- Achievement badges and milestone rewards
- Team leaderboards to encourage healthy competition
- Streak tracking for sustained productivity
- Real-time productivity charts and heatmaps
- Individual vs. team performance comparisons
- Stress level tracking over time
- Task completion rates and bottleneck detection
OptiWork
├── Frontend # React-based SPA with role-based routing
│ ├── HR Dashboard
│ └── Engineer Dashboard
├── Backend # REST API / business logic layer
│ ├── Auth & User Management
│ ├── Task Assignment Engine
│ └── Analytics Service
└── Database # Persistent storage for users, tasks, and metrics
- Node.js
>= 18.x - npm or yarn
- A running database instance (see configuration)
# Clone the repository
git clone https://github.com/wassimjhinaoui/Optiwork.git
cd Optiwork/project
# Install dependencies
npm install
# Configure environment variables
cp .env.example .env
# Edit .env with your database URL, API keys, etc.
# Start the development server
npm run devThe app will be available at http://localhost:3000.
- Log in with an HR account
- Access the HR Dashboard to view team-wide productivity metrics
- Use the Smart Task Assigner to distribute tasks based on current employee workload
- Monitor stress indicators and flag at-risk employees
- Log in with an engineer account
- View your personal dashboard with tasks, scores, and progress
- Complete tasks to earn XP and badges
- Track your productivity streak and compare with teammates on the leaderboard
project/
├── src/
│ ├── components/ # Reusable UI components
│ ├── pages/ # Route-level page components
│ │ ├── hr/ # HR Manager views
│ │ └── engineer/ # Engineer views
│ ├── services/ # API calls and business logic
│ ├── store/ # State management
│ └── utils/ # Helpers and constants
├── public/ # Static assets
├── .env.example # Environment variable template
└── package.json
Contributions are welcome! Please follow these steps:
- Fork the repository
- Create a feature branch:
git checkout -b feature/your-feature-name - Commit your changes:
git commit -m "feat: add your feature" - Push to your branch:
git push origin feature/your-feature-name - Open a Pull Request
This project is licensed under the MIT License. See the LICENSE file for details.
Built with ❤️ to make remote work smarter, healthier, and more engaging.