A full-stack time management and employee tracking platform built with Vue.js, Elixir/Phoenix, and React Native.
Time Manager is a productivity-focused web and mobile application designed for teams and organizations to efficiently track employee working hours, manage teams, and visualize productivity through interactive charts. It provides role-based access control, real-time clock-in/clock-out functionality, and detailed analytics dashboards.
Keywords: time management, employee tracker, productivity tool, task tracker, team management, working hours, Vue.js app
- Clock In / Clock Out — Real-time timer to track working sessions with precision
- Working Time Management — Create, view, edit, and delete working time entries
- Team Management — Organize employees into teams and monitor team-level productivity
- Interactive Charts & Analytics — Visualize working hours and trends with ApexCharts dashboards
- Role-Based Access Control — Secure authentication with Guardian (JWT) and user roles
- User Accounts — Sign up, sign in, and manage personal profiles
- Mobile App — Cross-platform React Native (Expo) mobile companion app
- Drag & Drop Interface — Intuitive UI with draggable components via VueDraggable
- Dockerized Deployment — Full Docker Compose setup for easy deployment
| Layer | Technology |
|---|---|
| Frontend | |
| Backend | |
| Mobile | |
| Database | |
| DevOps | |
| Auth |
- Docker & Docker Compose
- Node.js (v16+)
- Elixir (~> 1.12)
- PostgreSQL 15
# Clone the repository
git clone https://github.com/Senzo13/Time_Manager.git
cd Time_Manager
# Create a .env file with your database credentials
# (see docker-compose.yml for required variables)
# Build and run all services
docker-compose up --buildThe web app will be available at http://localhost:80 and the API at http://localhost:4000.
cd server/time_manager
# Install dependencies
mix deps.get
# Create and migrate the database
mix ecto.setup
# Start the Phoenix server
mix phx.servercd app/web/time_manager
# Install dependencies
npm install
# Start the dev server
npm run devcd app/mobile/TIME_MANAGER_APP
# Install dependencies
npm install
# Start Expo
npm startTime_Manager/
├── app/
│ ├── web/time_manager/ # Vue.js 3 web application (Vite)
│ └── mobile/TIME_MANAGER_APP/ # React Native mobile app (Expo)
├── server/time_manager/ # Elixir/Phoenix REST API
├── docker-compose.yml # Docker orchestration
└── README.md
Contributions are welcome! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/my-feature) - Commit your changes (
git commit -m "Add my feature") - Push to the branch (
git push origin feature/my-feature) - Open a Pull Request
Please make sure your code follows the existing style and passes all tests before submitting.
Lorenzo — @Senzo13
Project Link: https://github.com/Senzo13/Time_Manager
If you found this project useful, please consider giving it a ⭐
