Employee Management & Attendance App
Multi-tenant attendance, leave, shifts, assets, announcements and chat for teams. Client name under NDA.

Client name, branding and screenshots withheld under agreement.
A multi-tenant employee portal for mid-size companies, built as a Flutter client that mirrors the existing React web app screen for screen and endpoint for endpoint. Employees clock in and out, request leave and read announcements; managers approve and correct; admins configure the tenant, from leave tiers to brand colours.
Attendance is the heart of it: an analog clock with a shift-progress ring, office or work-from-home clock-in, timed breaks with auto-resume, a late-arrival reason flow with reviewer approval, a "still working?" watcher with a countdown, and server-side auto clock-out reconciliation that admins can override or convert to leave.
Notifications arrive over a live server-sent-events stream with reconnect and a polling fallback, surface as OS notifications with selectable chimes, and deep-link into the right screen. Messaging covers direct and group chats with reactions, read receipts, presence and media.
Key Features
- Login by user id or email, JWT in secure storage, tenant switch, role-based routing with a role-selection screen for multi-role users, and a mandatory profile-photo gate.
- Clock in / out with work location, breaks, emergency clock-out, late-reason review, still-working watcher, auto clock-out records, attendance history and exceptions.
- Leave: balances, submission with CC leads, cancellation review, approve / reject with unpaid overflow, personal / team / all calendars, leave types, tiers, fiscal years with carry-over, and public holidays with calendar sync.
- Shifts: list, edit, assignment and change announcements.
- Daily targets feed and company / leave / WFH announcements with attachments.
- Asset inventory: assign, return, defect and fix, acknowledgement and issue flags.
- Direct and group messaging with reactions, edits, read receipts, presence, media upload and inline video.
- Live notifications (server-sent events with polling fallback), OS notifications, six chimes, deep links and per-alert settings.
- Reports for attendance, leave and balances, team reports, batch export and system-health metrics.
- Admin branding: logo upload and 23 light and dark colour tokens with live preview.
- Offline-aware read state with a self-retrying offline card; three environments via compile-time defines.
- 68 unit and widget test files.
Technology
- Flutter
- Dart
- Provider
- go_router
- Dio
- secure storage
- local notifications
- server-sent events
- video player
- hand-drawn charts
Status: Built for iOS and Android. No public listing is linked, per the client agreement.