myTask — Timesheet & Workforce Web App

myTask is a multi-tenant timesheet and workforce management platform. The web app gives owners, managers, and staff a full admin experience for organisations, timesheet approvals, jobs, customers, live GPS tracking, reports, payouts, and subscriptions.

Overview

Built as a modern React + Vite rebuild of myTask, this web application supports multi-organisation membership with role-based access (owner, moderator, manager, staff). Managers run approvals and payroll settings while employees manage their own sheets — all backed by a Node.js API, Firebase Auth, Socket.IO realtime, and MySQL.

Key Features

• Multi-tenant organisations with invitations and role-based ACL
• Employee self-service sheets (My Sheets) and manager approval workflows
• Day editor with timeline views and live GPS tracking maps
• Employees, customers, and jobs with geofenced work sites
• Holiday calendars, payroll calendars, reports, and payouts
• Stripe Free/Pro billing, invoices, and organisation settings
• Realtime updates via Socket.IO and web push notifications (FCM)

Business Impact

Teams get one place to manage workforce time, approvals, and field visibility. Clear draft → submitted → approved/rejected flows reduce manual follow-ups, while live maps and reports help managers make faster payroll and scheduling decisions.

Technologies Used

React TypeScript Vite Tailwind CSS React Router TanStack Query Zustand Firebase Auth Firebase Cloud Messaging Socket.IO Google Maps JavaScript API Stripe Node.js Express Sequelize MySQL Redis BullMQ