Shared Components
Components reused across multiple features
UI Components
Reusable Flutter widget that attaches to any opt-in TextFormField as a microphone icon button. Manages the full recordin...
Reusable modal widget that lets coordinators select a contact from their organization roster for proxy registration acti...
A library of reusable Flutter widgets that wrap primitives with mandatory semantic labels, ARIA-equivalent Semantics pro...
A Flutter-native design token system that encodes WCAG 2.2 AA contrast ratios, minimum touch target sizes, spacing scale...
Persistent five-tab bottom navigation bar (Home, Contacts, Add, Work, Notifications) that anchors the mobile app shell. ...
Reusable stat card component rendering a single KPI metric with its label, value, and trend indicator. Supports skeleton...
Composite filter control bar rendered above the reports table, providing date range picker, activity type multi-select, ...
Row of summary stat cards displayed at the top of the Team Reports page showing key aggregate metrics for the filtered d...
Site-wide consent banner displayed on first visit to the sales website. Blocks non-essential cookies until user grants c...
Service Components
Core authentication service that handles email and password credential validation, JWT access token issuance, rotating r...
Utility service responsible for requesting, caching, and re-checking microphone permission on iOS and Android. Surfaces ...
Generic BLoC-driven multi-step wizard controller managing step state, validation gating, and the single commit action th...
Riverpod provider exposing a reactive combined state of the full contact list and the current search query, with the fil...
Implements the connector interface pattern for pushing approved expense batches to external accounting systems. Each sup...
Riverpod-based service that parses the bootstrap API response to extract the tenant's enabled module set, exposes reacti...
Fetches versioned static content (accessibility statement, privacy policy) from a backend endpoint and caches it in Drif...
Streaming export service that writes filtered expense records directly to the HTTP response without buffering the full r...
Utility service that constructs parameterized PostgreSQL aggregate queries for the team reports endpoint. Accepts filter...
Shared service that serializes report result data into CSV or Excel format and streams the file to the client. Accepts t...
Flutter-side singleton service that resolves display labels for the authenticated user's organization by reading from th...
Core append-only backend utility that writes immutable audit log entries. Called by all authentication flows and every w...
Utility that loads and parses MDX files or headless CMS content for all sales website pages. Provides typed content inte...
Provides versioned privacy policy content from MDX files or a headless CMS, enabling legal document updates without code...
Data Components
Data repository for active user sessions and their associated opaque refresh tokens. Persists session state across reque...
Canonical PostgreSQL table storing all user account data: personal fields, language preference, photo URL, and organizat...
Drift table definition for offline-first local storage of contact records inside the SQLCipher-encrypted local database....
Encrypted local SQLite database managed by Drift (Flutter's type-safe ORM). Provides full CRUD for all core entities - a...
User Roles Table
Database component managing the export_logs table, which tracks every Bufdir export job across its full lifecycle. Store...
PostgreSQL data component managing the organizations table with row-level tenant isolation enforced at the API layer. St...
PostgreSQL table storing the many-to-many relationship between users and organizations. Holds role, primary-membership f...
Infrastructure Components
Infrastructure utility for signing and validating JWT access tokens. Supports per-tenant signing key retrieval and confi...
Thin wrapper around the share_plus Flutter package that invokes the device native share sheet with a text or URL payload...
Flutter utility wrapping the url_launcher package to open external URLs in the device browser or optionally an in-app we...
Centralized HTTP client wrapping Dart's http or Dio with JWT bearer token injection, automatic token refresh on 401 resp...
Next.js middleware applied to all admin user management API routes. Validates the incoming JWT, resolves the requesting ...
Next.js metadata configuration shared across all sales website pages. Defines page titles, descriptions, Open Graph tags...
File-based or CMS-backed content storage for versioned legal documents (ToS, Privacy Policy, DPA, Cookie Policy, SLA). A...