UI Components

Service Components

Data Components

Infrastructure Components

Shared Components

Token Store

Secure on-device storage adapter for JWT access and refresh tokens using flutter_secure_storage. On ...

shared low shared
Keychain/Keystore Adapter

Platform-specific infrastructure adapter that wraps iOS Keychain and Android Keystore APIs via flutt...

shared low shared
Auth API Client

Service layer responsible for all authentication REST API communication including login, token refre...

shared medium shared
Password Policy Validator

Shared validation service enforcing minimum password security standards on both client (mobile) and ...

shared low shared
Token Store

Provides secure persistent storage for JWT access tokens and refresh tokens on the mobile device usi...

shared low shared
Secure Token Store

Manages the full lifecycle of JWT access and refresh tokens using flutter_secure_storage, backed by ...

shared medium shared
Secure Token Store

Manages the lifecycle of encrypted JWT refresh tokens stored in platform-secure storage (iOS Keychai...

shared medium shared
JWT Claims Extractor

Shared utility used by both the mobile app and the Next.js backend to decode and validate JWT access...

shared low shared
Permission Validation Middleware

Next.js middleware that runs on every protected API route (`/api/v1/...`) to validate the JWT access...

shared high shared
Role Guard Widget

A reusable Flutter widget wrapper that conditionally renders or hides child widgets based on the cur...

shared low shared
Organization Labels Adapter

Runtime adapter that resolves dynamic organization-specific field labels and terminology for the pro...

shared low shared
Keychain/Keystore Adapter

Platform-level secure storage adapter wrapping iOS Keychain and Android Keystore APIs via the Flutte...

shared low shared
Auth API Client

Shared HTTP client for all authentication-related REST API calls including login, token refresh, and...

shared medium shared
REST API Client

Shared HTTP client responsible for all communication between the Flutter mobile app and the Next.js ...

shared medium shared
Activity Store

Local data store managing persisted activity records on the device. Shared with the Simple Activity ...

shared low shared
Activity Service

Business logic service responsible for constructing and submitting activity payloads to the REST API...

shared medium shared
Peer Mentor Selector Widget

Searchable dropdown or list picker widget that loads peer mentors within the coordinator's local ass...

shared low shared
WCAG Accessibility Adapter

Infrastructure layer providing WCAG 2.2 AA accessibility annotations, semantic labels, and screen re...

shared low shared
Event Date & Time Picker Widget

Reusable date and time selection widget used within the Event Creation Wizard steps for picking even...

shared low shared
Event List Cache Store

Local SQLite data access object that persists the most recently fetched events page for offline-capa...

shared low shared
Event API Client

Low-level HTTP client wrapper that calls the events REST API endpoints, attaches JWT auth headers, s...

shared low shared
Event Repository Service

Business logic service responsible for fetching paginated events from the REST API, applying role-ba...

shared medium shared
Registration API Client

Thin HTTP client adapter responsible for serializing and dispatching registration requests to the RE...

shared low shared
Proxy Target Selector Widget

Coordinator-only inline widget within the registration screen that allows selecting a contact or pee...

shared low shared
Accounting API Client

Backend facade that routes expense export requests to provider-specific adapters (Xledger for Blinde...

shared high shared
File Upload Service

Manages chunked, resumable file uploads to the backend REST API, ensuring reliable delivery on poor ...

shared high shared
Expense Type Store

Mobile-side data store that caches the organisation's active expense type catalogue, including type ...

shared medium shared
Expense Type Service

Backend service that manages the lifecycle of organisation-scoped expense type catalogues, including...

shared high shared
Contact Store

Riverpod-based state management store that holds the current contact list, search state, pagination ...

shared low shared
Contact Service

Business logic service that manages contact retrieval, search operations, and role-based access enfo...

shared medium shared
Contact Store

Local data repository for contact records providing caching, optimistic state management, and synchr...

shared low shared
Notes Store

Local SQLite repository for submitted notes, shared between the Notes List and Note Editor features....

shared low shared
STT Service

Shared speech-to-text service that delegates to the platform-specific STT Provider Adapter. Accepts ...

shared medium shared
Contact Search Widget

Reusable inline search widget that queries the contact store and returns a selected contact ID and d...

shared low shared
PDF Renderer Adapter

Server-side PDF generation adapter using Puppeteer or a PDF rendering service to produce a submissio...

shared medium shared
Reporting Period Selector Widget

Reusable Flutter widget for selecting the date range and organizational scope of a Bufdir report. Su...

shared low shared
File Share Adapter

Abstracts the Flutter platform-specific file delivery mechanisms. On download, uses the `path_provid...

shared low shared
Assignment Count Store

Maintains pre-aggregated assignment completion counts per peer mentor per reporting period, eliminat...

shared low shared
Push Token Repository

Data access layer for the push_tokens table, managing the registration, refresh, and deregistration ...

shared low shared
FCM/APNs Adapter

Abstracts platform-specific push notification delivery behind a unified NotificationGateway interfac...

shared high shared
Notification Audit Log Store

Persists a record of every dispatched notification, capturing rule ID, recipient user ID, delivery c...

shared low shared
Push Token Store

Data component managing FCM/APNs device token lifecycle including registration, refresh, and deletio...

shared low shared
Push Token Store

Data component responsible for managing FCM and APNs push token persistence. Handles token registrat...

shared low shared
Share Sheet Adapter

Thin wrapper around the share_plus Flutter package that triggers the native OS share sheet. Abstract...

shared low shared
Share Plus Adapter

Thin adapter wrapping Flutter's share_plus package to provide a testable, mockable interface for tri...

shared low shared
Organization Impact Settings Repository

Data access layer that reads organization-specific impact multipliers (hourly rates, cost equivalent...

shared low shared
Accessibility Preferences Store

Persists user-level accessibility overrides such as preferred text scale factor, high-contrast mode ...

shared low shared
Platform Accessibility Bridge

Thin platform-channel wrapper that queries the host OS for active assistive technology state (VoiceO...

shared medium shared
Keyboard Navigation Service

Manages focus traversal order, visible focus indicators, and keyboard shortcut bindings to ensure ev...

shared medium shared
Screen Reader Support Service

Central service governing all screen reader semantics across the mobile app. Provides utilities for ...

shared high shared
Screen Reader Support Service

Centralizes semantic labelling logic for all interactive widgets to ensure VoiceOver (iOS) and TalkB...

shared high shared
Accessibility Design System

Centralized design token system enforcing WCAG 2.2 AA constraints at the component level. Encapsulat...

shared high shared
Accessibility Design System

A shared design token system that enforces WCAG 2.2 AA compliance at the component level. It encapsu...

shared high shared
Focus Indicator Widget

Reusable focus ring overlay widget that renders a visible, high-contrast focus indicator around any ...

shared low shared
Semantics Override Adapter

Low-level Flutter accessibility adapter that provides an abstraction over the Flutter Semantics fram...

shared high shared
Localization Service

Wraps Flutter's LocalizationsDelegate and the intl package to provide runtime locale resolution and ...

shared medium shared
Localization Service

Wraps Flutter's LocalizationsDelegate and intl package to provide a runtime locale-switching API. It...

shared medium shared
URL Launcher Adapter

Wraps the flutter_url_launcher and flutter_inappwebview packages behind a unified interface. Handles...

shared low shared
Markdown Content Renderer

Reusable Flutter widget that renders a markdown string as formatted rich text using a lightweight pa...

shared low shared
Local SQLite Database

Device-local SQLite database managed via the drift (formerly Moor) or sqflite Flutter plugin. Stores...

shared high shared
Sync Queue

Persistent queue stored in local SQLite that records all data mutations (creates, updates, deletes) ...

shared medium shared
Network Connectivity Monitor

Wraps the connectivity_plus Flutter package to provide a reactive stream of network availability eve...

shared low shared
Repository Data Source Router

Implements the repository pattern abstracting data source selection from feature-level BLoC/Riverpod...

shared high shared
Role Scope Resolver

Shared service that determines the data visibility scope for the authenticated user based on their r...

shared low shared
Audit Log Service

Shared service that writes structured audit log entries for all approval workflow actions, capturing...

shared medium shared
Approval Status Indicator

Reusable badge/chip widget that renders the approval status of an activity (pending_review, approved...

shared low shared
Expense Receipt Storage Adapter

Infrastructure adapter that generates short-lived signed URLs for receipt images stored in the objec...

shared low shared
Audit Log Service

Shared service that persists structured audit trail entries for all approval actions in the system. ...

shared medium shared
Receipt Preview Widget

Inline image viewer for receipt photos attached to expense claims. Supports thumbnail display within...

shared medium shared
Audit Log Writer

Infrastructure utility that writes structured audit log entries to the audit_logs table. Used by the...

shared low shared
Feature Flag Checker

Utility used by the Auto-Approval Rule Engine to verify that the auto_approval_rules feature flag is...

shared low shared
Report Store

Data access layer that executes optimized PostgreSQL queries for activity aggregation, leveraging in...

shared high shared
Report Access Control Service

Service that enforces data scoping rules for report queries based on the authenticated user's role a...

shared medium shared
Report Filter Bar

UI component providing controls for filtering report data by date range, local association, activity...

shared medium shared
Export Audit Logger

Records structured audit log entries for every Bufdir export action. Captures the exporting user's I...

shared low shared
Report Export Service

Generates downloadable CSV and XLSX files from report result sets. Streams large result sets to avoi...

shared medium shared
Report Export Service

Generates downloadable CSV and XLSX files from report result sets. Handles column header formatting,...

shared medium shared
Logo Upload Adapter

Infrastructure adapter handling multipart form data uploads of organization logo images to object st...

shared low shared
Mobile Terminology Store

Flutter Riverpod provider that loads the organization terminology map from the session bootstrap pay...

shared medium shared
Terminology Constants Registry

Central constants file shared across both the admin portal and the mobile app that defines all valid...

shared low shared
Terminology Context Provider

Next.js server-side context provider injected into the admin portal layout that resolves all UI labe...

shared medium shared
Terminology Service

Backend service responsible for reading, writing, and validating organization terminology maps store...

shared medium shared
Terminology Service

Backend service that manages the terminology override map for each organization. Handles CRUD operat...

shared medium shared
Feature Flag Cache Adapter

Redis caching layer for feature flag resolution. Stores per-organization feature maps with a 60-seco...

shared low shared
Feature Registry Loader

Loads the static feature registry file that defines all known feature keys, their default states, hu...

shared low shared
Org Scope JWT Resolver

Extracts and validates the organization scope claim from the admin's JWT at request time, determinin...

shared medium shared
Hierarchy Access Control Service

Resolves which nodes in the organization tree the requesting admin is authorized to view or modify. ...

shared high shared
Hierarchy Scope Resolver

Resolves the effective organization scope for a given user based on their JWT claims and role assign...

shared medium shared
Association Audit Logger

Infrastructure component that records all membership change events to the audit_logs table. Captures...

shared low shared
Association Service

Core backend service responsible for all business logic around user-to-local-association membership ...

shared medium shared
Security Metrics Repository

Data access layer that executes parameterized PostgreSQL queries over the audit_logs and sessions ta...

shared medium shared
Audit Log Service

Centralized service responsible for emitting, querying, and exporting audit log entries. Inserts app...

shared high shared
Token Blocklist

Short-lived storage for revoked JWT access token JTIs to ensure immediate revocation takes effect wi...

shared medium shared
Analytics Tracker

Integrates web analytics (Google Analytics or Plausible) to measure visitor behavior, conversion rat...

shared low shared
SEO Metadata Config

Provides page-level SEO configuration for the Features Page including meta tags, Open Graph properti...

shared low shared
Analytics Tracker

Lightweight infrastructure component that fires analytics events for user interactions on the sales ...

shared low shared
Analytics Tracker

Tracks user interactions with the impact calculator to measure engagement and conversion funnel effe...

shared low shared
Sales Analytics Tracker

Lightweight analytics instrumentation for tracking user engagement on sales website pages. Fires pag...

shared low shared
Email Provider Adapter

Infrastructure adapter that abstracts the transactional email provider (e.g., Resend or SendGrid) be...

shared low shared
Terms of Service Content Provider

MDX or lightweight CMS adapter that supplies versioned legal content to the Terms of Service page wi...

shared low shared
Legal PDF Asset Provider

Manages pre-rendered PDF files for legal documents stored in object storage, providing signed or pub...

shared low shared
DPA Content Provider

Loads and provides DPA article content from MDX source or CMS, enabling legal team updates without c...

shared low shared
Consent-Gated Script Loader

Infrastructure utility that manages deferred loading of third-party analytics and marketing scripts ...

shared low shared
Cookie Consent Service

Central service managing the full consent lifecycle on the sales website. Reads and writes consent s...

shared medium shared
Cookie Consent Service

Lightweight client-side service managing consent state persistence, providing a Consent API that emb...

shared medium shared
Legal Page Layout

Shared layout component used across all legal and policy pages on the sales website (Privacy Policy,...

shared low shared