WorkMatrix is a comprehensive employee monitoring and time tracking solution designed for modern workplaces. It combines a powerful Next.js frontend with a Python-based background monitoring service, all backed by Supabase for real-time data synchronization.
- 🔐 Secure Authentication - Multi-factor authentication with role-based access control
- ⏱️ Time Tracking - Automated time tracking with manual adjustments
- 📸 Screenshot Monitoring - Configurable screenshot capture with privacy controls
- 📊 Activity Monitoring - Application and productivity tracking
- 📈 Personal Analytics - Individual performance and time allocation insights
- 🎯 Task Management - Personal task tracking and progress monitoring
- 👥 Team Management - Comprehensive employee oversight and team organization
- 📊 Analytics Dashboard - Real-time productivity metrics and team performance
- 🔍 Activity Review - Detailed employee activity monitoring and analysis
- 📅 Attendance Management - Time-off tracking and schedule management
- ⚙️ Customizable Settings - Flexible monitoring rules and company policies
- 📱 Cross-platform Support - Works on Windows, macOS, and Linux
The project consists of three main components:
- Framework: Next.js 13 (App Router)
- Authentication: Supabase Auth
- State Management: React Query & Context API
- Styling: Tailwind CSS & shadcn/ui
- Real-time Updates: Supabase Realtime
- Language: Python 3.9+
- Monitoring: System-level activity tracking
- Storage: Local SQLite with Supabase sync
- Deployment: Windows Service/Systemd
- Security: End-to-end encryption
- Structure: Modular architecture with separate services
- Framework: Next.js 13
- Data Visualization: Chart.js
- Real-time Updates: Supabase Realtime
- Role-based Access: Admin/Manager views
- Node.js 18.x or higher
- Python 3.9 or higher
- Supabase account
- Git
- Clone the repository:
git clone https://github.com/QuantumBreakz/WorkMatrix.git
cd WorkMatrix/Front-End- Install dependencies:
npm install
# or
pnpm install- Configure environment variables:
cp .env.example .env.local
# Edit .env.local with your Supabase credentials- Start the development server:
npm run dev- Navigate to the Background-App directory:
cd ../Background-App- Create a virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install dependencies:
pip install -r requirements.txt- Configure the service:
cp config/default.toml config/config.toml
# Edit config.toml with your settings- Run the service:
python tools/build_background.py # Build the executable
./scripts/start_workmatrix.ps1 # Start the serviceWorkMatrix/
├── Front-End/ # Next.js frontend application
├── Background-App/ # Python monitoring service
│ ├── src/ # Source code
│ ├── tools/ # Build and maintenance tools
│ ├── scripts/ # Utility scripts
│ ├── config/ # Configuration files
│ └── docs/ # Service documentation
├── Dashboard/ # Admin dashboard
└── supabase/ # Supabase configuration and migrations
Detailed documentation is available in the following sections:
- Front-End Documentation
- Background Service Documentation
- Dashboard Documentation
- API Documentation
- Deployment Guide
- Security Considerations
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
- Front-End: ESLint & Prettier
- Background-App: Black & isort
- Commit messages: Conventional Commits
For security concerns, please see our Security Policy.
This project is licensed under the MIT License - see the LICENSE file for details.
- 📧 Email: support@workmatrix.com
- 💬 Discord: Join our community
- 📚 Documentation: docs.workmatrix.com
