App

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.