252
Total Service Layer
42
Low Complexity
136
Medium Complexity
74
High Complexity
34
Shared

Service Layer components contain business logic, orchestrate operations, and provide core application functionality.

Auth API Client

Dart service responsible for all authentication-related HTTP communication with the Next.js REST API. Handles login, logout, token refresh, ...

medium Email & Password Login
Auth API Client

Service layer responsible for all authentication REST API communication including login, token refresh, password reset requests, and logout....

medium shared Email & Password Login
Auth Backend Service

Next.js server-side service handling the authentication business logic: verifying bcrypt-hashed passwords, issuing JWT access and refresh to...

high Email & Password Login
Password Policy Validator

Shared validation service enforcing minimum password security standards on both client (mobile) and server (Next.js API). Ensures consistent...

low shared Email & Password Login
BankID OAuth Service

Orchestrates the full OAuth 2.0/OIDC authentication flow for BankID. Communicates with the backend to exchange the authorization code for an...

high BankID Authentication
BankID OAuth Service

Orchestrates the complete OAuth 2.0 / OIDC authentication flow with the BankID identity provider. Manages authorization code exchange, ident...

high BankID Authentication
Vipps OAuth Service

Orchestrates the full Vipps Login OAuth 2.0 / OIDC authentication flow on the mobile client. Constructs the authorization request, triggers ...

high Vipps Authentication
Vipps OAuth Service

Backend service implementing the Vipps Login OAuth 2.0 / OIDC flow. Exchanges the authorization code for access and ID tokens, extracts user...

high Vipps Authentication
Biometric Auth Service

Orchestrates the full biometric authentication flow using the local_auth Flutter plugin. On successful biometric verification, retrieves the...

high Biometric Login (Face ID/Fingerprint)
Biometric Auth Service

Orchestrates the biometric authentication flow by checking device biometric capability, invoking the local_auth plugin for verification, and...

medium Biometric Login (Face ID/Fingerprint)
Permission Validation Middleware

Next.js middleware that runs on every protected API route (`/api/v1/...`) to validate the JWT access token and enforce role-based access at ...

high shared Role-Based Access Control
Role Guard Service

Core Flutter BLoC that loads the authenticated user's active role after login and emits permission state consumed by route guards and UI wid...

high Role-Based Access Control
Role Guard Service

Central authorization service that enforces role-based access boundaries across the mobile app and backend API. Evaluates the authenticated ...

high Role-Based Access Control
Profile BLoC

Flutter BLoC managing all state for the Profile and Profile Settings screens. Processes events such as load profile, submit edit, and change...

medium Profile Data & Settings
Profile Service

Business logic service responsible for reading and updating the authenticated user's profile via the REST API, and managing local cache cohe...

medium Profile Data & Settings
Profile Service

Business logic layer handling profile reads, updates, and validation against the REST API. Manages API communication for user profile CRUD o...

medium Profile Data & Settings
Profile Switch Service

Orchestrates the role-switching lifecycle: reads the set of roles resolved at login from the active role cache, writes the newly selected ac...

medium Profile Switching
Profile Switch Service

Core business logic service that manages the active role context for dual-role users. Handles updating the active role in secure local stora...

medium Profile Switching
Share Service

Constructs the shareable payload for a peer mentor profile — either a deep link URL or plain-text summary — and invokes the platform's nativ...

low Share Profile
Share Service

Constructs shareable payloads from the user's public profile data, generating either a deep link URL or a plain-text summary. Invokes the pl...

low Share Profile
Passkey Auth Service

Orchestrates the full FIDO2 WebAuthn registration and authentication ceremonies by coordinating between the platform adapter (Flutter creden...

high Authentication Methods (Passkeys)
Passkey Auth Service

Core service managing the full FIDO2 WebAuthn lifecycle including registration ceremonies (attestation) and authentication ceremonies (asser...

high Authentication Methods (Passkeys)
Activity Service

Core business logic service orchestrating the creation, validation, and submission of activity records. Handles the full lifecycle from draf...

medium Simple Activity Logging
Activity Service

Core business logic service for activity registration. Handles form validation, default value resolution from user history, and submission t...

medium Simple Activity Logging
Default Value Resolver

Stateless service that computes intelligent pre-fill values for the quick log form based on the user's activity history and current context....

low Simple Activity Logging
Activity Service

Business logic service responsible for constructing and submitting activity payloads to the REST API. Shared with the Simple Activity Loggin...

medium shared Activity Registration Wizard
Wizard State Manager

BLoC-based state manager that holds and coordinates the full wizard form state across all steps, handling navigation, per-step validation, a...

high Activity Registration Wizard
Wizard State Manager

BLoC-based state manager that holds the complete form state across all wizard steps and orchestrates navigation, validation, and submission....

high Activity Registration Wizard
Wizard Step Config Resolver

Resolves the ordered list of wizard steps and their field configurations based on the current organization's settings and terminology labels...

medium Activity Registration Wizard
Wizard Validation Service

Handles per-step and cross-step validation rules for the activity wizard. Enforces required field checks, date constraints, and organization...

medium Activity Registration Wizard
Calendar Event Mapper

Stateless mapping service that converts between Meander's internal activity and event data models and the native calendar event formats used...

medium Calendar Sync
Calendar Sync Service

Core orchestration service that mediates between the device calendar API, Google Calendar API, and the Meander REST API. Implements bidirect...

high Calendar Sync
Calendar Sync Service

Core business logic service mediating between the device calendar API and the Meander REST API. Manages bidirectional synchronization, confl...

high Calendar Sync
STT Service

Manages the full speech recognition session lifecycle: initialisation, start, streaming partial results, finalising the transcript, error ha...

medium Speech-to-Text Input
STT Service

Manages the speech recognition session lifecycle including start, stop, error handling, and timeout. Exposes a stream of partial and final t...

medium Speech-to-Text Input
Proxy Registration Service

Business logic layer that constructs and submits a proxy activity registration to the backend API. Attaches the coordinator's ID as the subm...

medium Coordinator Proxy Reporting
Proxy Registration Service

Business logic service handling proxy activity registration. Manages the on-behalf-of workflow by injecting the proxy_user_id into activity ...

medium Coordinator Proxy Reporting
Proxy Scope Validator

Client-side guard that verifies a coordinator is authorized to proxy-register on behalf of a given peer mentor before submission. Checks tha...

low Coordinator Proxy Reporting
Bulk Processing Service

Orchestrates the atomic bulk activity creation by sending a batch request to the backend API with a participants array and standard activity...

high Bulk Registration
Bulk Processing Service

Backend service responsible for atomically creating individual activity records for each selected participant within a single database trans...

high Bulk Registration
Bulk Validation Service

Validates bulk registration inputs before processing, ensuring all selected participants are active members of the coordinator's local assoc...

medium Bulk Registration
Event API Client

Mobile-side REST client responsible for making authenticated HTTP calls to the Event Service endpoints. Handles JWT attachment, error mappin...

low Event Creation
Event Service

Backend service handling all event lifecycle operations, including creation, retrieval, and org-scoped access enforcement. Exposes the POST ...

medium Event Creation
Event Service

Business logic service responsible for creating events via the REST API, applying organization-scoped tenant isolation, and enforcing role-b...

medium Event Creation
Event Wizard BLoC

Flutter BLoC managing wizard step state, validation results, and draft persistence for the Event Creation flow. Coordinates step transitions...

medium Event Creation
Event Wizard State Manager

BLoC/Riverpod-based state manager that maintains wizard progress, persists partial state locally for interruption recovery, and orchestrates...

medium Event Creation
Event API Client

Low-level HTTP client wrapper that calls the events REST API endpoints, attaches JWT auth headers, serialises query parameters, and deserial...

low shared Event Listing
Event Repository Service

Business logic service responsible for fetching paginated events from the REST API, applying role-based and organisation-context query param...

medium shared Event Listing
Event Repository Service

Manages event data retrieval from the REST API with local caching for offline access. Fetches paginated events from GET /api/v1/events with ...

medium Event Listing
Event Registration Service

Core Flutter service (BLoC/Riverpod) that orchestrates the event sign-up flow, including optimistic state management and rollback on API fai...

medium Event Sign-up
Event Registration Service

Business logic service handling event sign-up operations including self-registration and proxy registration. Manages optimistic UI updates w...

medium Event Sign-up
Expense Service

Core service managing the full travel expense lifecycle including creation, submission, threshold evaluation, and approval state transitions...

high Travel Expense Registration
Expense Service

Business logic service that manages expense creation, validation, and submission workflows. Fetches expense type definitions and mutual-excl...

high Travel Expense Registration
Expense Validation Service

Enforces client-side field-level validation that mirrors server-side constraints, including mutual exclusivity checks that make it technical...

medium Travel Expense Registration
File Upload Service

Manages chunked, resumable file uploads to the backend REST API, ensuring reliable delivery on poor mobile connections. Tracks per-chunk sta...

high shared Receipt Photo Upload
File Upload Service

Handles client-side image compression and chunked, resumable uploads to the backend. Compresses images to under 500 KB using flutter_image_c...

high Receipt Photo Upload
Image Compression Service

Applies client-side JPEG and PNG compression using the flutter_image_compress package before upload, targeting output files under 500 KB to ...

medium Receipt Photo Upload
Receipt Requirement Service

Evaluates whether a receipt is mandatory for a given expense based on organisation-configured threshold rules — for example, HLF requires a ...

medium Receipt Photo Upload
Receipt Validation Service

Enforces receipt requirement rules based on expense type and amount thresholds configured per organisation. For example, HLF requires a rece...

medium Receipt Photo Upload
Expense Rule Evaluation Engine

Stateless rule evaluation engine that processes the JSON rules field on expense type records to determine validity of expense submissions. E...

medium Expense Types & Requirements
Expense Rule Validation Engine

Stateless rule-evaluation service that applies the expense type configuration rules (mutual-exclusivity groups, documentation requirements, ...

medium Expense Types & Requirements
Expense Type Config Service

Admin-facing service layer used by the Expense Type Config Page to orchestrate configuration changes and communicate with the backend Expens...

low Expense Types & Requirements
Expense Type Service

Backend service that manages the lifecycle of organisation-scoped expense type catalogues, including CRUD operations, rule configuration, an...

high shared Expense Types & Requirements
Expense Type Service

Core business logic service that manages the expense type catalogue and enforces all associated business rules. Handles CRUD operations for ...

high Expense Types & Requirements
Declaration Service

Business logic layer responsible for fetching versioned declaration content, submitting signed declarations to the backend, and querying exi...

low Confidentiality Declarations
Declaration Service

Backend service managing the lifecycle of confidentiality declarations including version control of declaration texts, validation of whether...

medium Confidentiality Declarations
Contact Service

Business logic layer responsible for fetching, filtering, and paginating contacts via the REST API. Enforces role-based scoping by passing r...

medium Contact List & Search
Contact Service

Business logic service that manages contact retrieval, search operations, and role-based access enforcement. Communicates with the REST API ...

medium shared Contact List & Search
Contact Detail Service

Fetches the full contact record including all related data needed to populate the Contact Detail Screen: personal profile, caregiver entries...

medium Contact Detail & Edit
Contact Update Service

Business logic layer responsible for persisting contact edits to the backend via a PATCH request to the REST API. Manages optimistic UI stat...

medium Contact Detail & Edit
Contact Update Service

Business logic service handling contact record updates via PATCH to the REST API. Manages field-level change detection, optimistic update st...

medium Contact Detail & Edit
Caregiver Service

Handles all business logic for caregiver and next-of-kin management, including CRUD operations against the REST API. Enforces that only the ...

low Caregiver & Next-of-Kin
Caregiver Service

Business logic layer for managing caregiver and next-of-kin records. Handles CRUD operations against the REST API, enforces permission check...

low Caregiver & Next-of-Kin
Notes API Client

Thin REST client responsible for all HTTP communication with the backend notes endpoints. Handles request construction, response parsing, pa...

low Notes List
Notes Service

BLoC-based service that orchestrates note retrieval from the REST API with pagination support. Implements a two-tier search strategy: client...

medium Notes List
Notes Service

Business logic layer managing note retrieval, search, and filtering. Implements client-side search for cached notes with fallback to REST AP...

medium Notes List
Note Save Service

Orchestrates all write operations for notes: autosaving drafts to local SQLite, submitting notes to the REST API, and deleting notes with se...

medium Note Editor
Note Save Service

Business logic service that handles creating, updating, and deleting notes via the REST API. Applies optimistic UI updates locally and rolls...

medium Note Editor
STT Service

Shared speech-to-text service that delegates to the platform-specific STT Provider Adapter. Accepts a start-recording command, streams parti...

medium shared Note Editor
Stats Aggregation Service

Core backend service that queries the shared PostgreSQL database to compute a peer mentor's personal activity statistics. Groups and sums ac...

medium Personal Activity Statistics
Stats Aggregation Service

Backend-oriented service that queries and aggregates activity records from the shared PostgreSQL database, grouping by mentor ID, activity t...

medium Personal Activity Statistics
Stats Riverpod Provider

Riverpod state management layer for the statistics feature. Manages async loading of aggregated stats, applies client-side filter state, and...

low Personal Activity Statistics
Team Stats Service

BLoC/Riverpod service that fetches and manages aggregated team statistics for coordinators via the Next.js REST API. Scopes all queries to p...

high Coordinator Team Reports
Team Stats Service

Backend-driven service that queries activity data scoped to all peer mentors within the coordinator's local association, applying row-level ...

medium Coordinator Team Reports
Bufdir Report Service

Core backend service that aggregates registered activities, participant data, and outcome metrics into the standardized Bufdir reporting for...

high Bufdir Report Generation
Bufdir Report Service

Core business logic service that aggregates registered activities, participant data, and outcome metrics from the database into the standard...

high Bufdir Report Generation
Report Data Aggregator

Dedicated query service that retrieves and joins activity records, contact data, and approval statuses needed for Bufdir report compilation....

medium Bufdir Report Generation
Export Access Guard

Enforces that only Coordinators and Organization Admins can trigger Bufdir exports, in accordance with the access control requirements state...

low Bufdir Export
Report Export Service

Core service responsible for orchestrating the Bufdir report export workflow. Validates that the requesting user holds the Coordinator or Or...

medium Bufdir Export
Report Export Service

Orchestrates the export of approved Bufdir reports into the required submission format. Communicates with the backend API to generate PDF or...

medium Bufdir Export
Accounting API Client

Orchestrates the transfer of approved expense and reimbursement data to an external accounting system. Resolves the correct adapter for the ...

high Accounting System Integration
Accounting API Client

Backend service that orchestrates communication with external accounting systems. Handles authentication, expense-to-accounting field mappin...

high Accounting System Integration
Accounting Field Mapper

Transforms Meander's internal expense and reimbursement schema into the field format required by the target accounting system. Applies the o...

medium Accounting System Integration
Assignment Dispatch Service

Orchestrates the full lifecycle of dispatching an encrypted assignment: fetches the recipient's public key, triggers client-side encryption,...

high Encrypted Assignment Dispatch
Encryption Service

Core service responsible for asymmetric end-to-end encryption of assignment payloads. Generates or retrieves the recipient peer mentor's pub...

high Encrypted Assignment Dispatch
Encryption Service

Handles all client-side cryptographic operations for assignment dispatch using asymmetric encryption (ECDH key pairs). The service generates...

high Encrypted Assignment Dispatch
Reminder Scheduler Service

Server-side scheduled job service that monitors assignment records and triggers automatic reminder notifications when a peer mentor has not ...

medium Encrypted Assignment Dispatch
Threshold Configuration Service

Manages the lifecycle of threshold configurations per organization, including creation, versioning, activation, and deactivation of honorari...

medium Assignment Threshold Tracking
Threshold Tracking Service

Core business logic service that listens for assignment completion events, increments the cumulative assignment counter for the reporting pe...

high Assignment Threshold Tracking
Threshold Tracking Service

Core backend service that listens for assignment completion events, increments per-mentor counters, evaluates organization-specific threshol...

medium Assignment Threshold Tracking
Deep Link Router

Client-side service that intercepts incoming push notification tap events and routes the user directly to the relevant in-app screen based o...

medium Push Notifications
Push Notification Service

Backend service responsible for constructing notification payloads and dispatching them to the correct platform adapter (FCM or APNs) based ...

high Push Notifications
Push Notification Service

Orchestrates the full push notification lifecycle: registering and refreshing device tokens on login, constructing notification payloads ser...

high Push Notifications
Email/SMS Notification Service

Backend service that orchestrates delivery of transactional emails and SMS messages triggered by business events. Handles template resolutio...

high Email/SMS Notifications
Email/SMS Notification Service

Backend service that orchestrates sending transactional emails and SMS messages through the provider adapter. Handles template resolution, r...

medium Email/SMS Notifications
Notification Deduplication Service

Prevents repeated notification sends by querying the notification audit log and comparing each candidate send against the rule's configured ...

medium Notification Scenarios
Notification Rule Engine

Core backend service that evaluates all registered notification rules against current database state to determine when, to whom, and through...

high Notification Scenarios
Notification Rule Engine

Central rule evaluation service that determines when, to whom, and through which channel notifications are sent. Runs as a scheduled job, it...

high Notification Scenarios
Notification Rule Registry

Maintains the central, authoritative list of all notification rule definitions. Each rule is a typed TypeScript object specifying event_type...

medium Notification Scenarios
Notification Settings Service

Business logic layer responsible for fetching and updating a user's notification preferences via the REST API. Handles default preference in...

low Notification Settings
Notification Settings Service

Business logic layer that manages notification preference CRUD operations. Fetches the current notification_settings record for the authenti...

low Notification Settings
Referral Link Service

Business logic service responsible for requesting, caching, and refreshing signed referral links from the backend REST API. Encodes the refe...

medium Invite Link & QR Sharing
Referral Link Service

Business logic layer responsible for generating, validating, and managing referral links. Communicates with the REST API to create server-si...

medium Invite Link & QR Sharing
Referral Tracking Service

Backend service that manages the full referral lifecycle from link attribution through account activation. Aggregates conversion events from...

medium Recruitment Tracking
Referral Tracking Service

Backend service that aggregates referral conversion data, computes recruitment metrics, and manages the referral lifecycle from link generat...

medium Recruitment Tracking
Course Service

Business logic layer for course management and registration. Handles REST API communication for fetching course listings, submitting registr...

medium Course Registration
Course Service

Manages course listing retrieval, registration submission, enrollment state transitions, and prerequisite validation via the REST API. Coord...

medium Course Registration
Certificate Service

Handles all business logic for retrieving and managing the peer mentor's certification state via the REST API. Determines certificate status...

medium Digital Peer Mentor Certificate
Certificate Service

Handles all business logic for retrieving, validating, and sharing digital peer mentor certificates. Communicates with the REST API to fetch...

medium Digital Peer Mentor Certificate
Workshop Registration Service

Handles participant registration and deregistration for career workshops. Reuses the same registration mechanism as Course Registration but ...

low Career Workshops
Workshop Service

Core business logic service for career workshop management. Handles CRUD operations for workshops (stored as courses with type='workshop' fl...

medium Career Workshops
Workshop Service

Business logic layer managing career workshop lifecycle including creation, registration, roster management, and facilitator tools. Workshop...

medium Career Workshops
Annual Summary Service

Client-side BLoC/Riverpod service that orchestrates fetching, caching, and presenting the annual summary for the current user. Fetches pre-c...

medium Annual Summary (Wrapped)
Annual Summary Service

Core business logic service that fetches pre-computed annual summary data from the backend REST API. Manages the summary lifecycle including...

high Annual Summary (Wrapped)
Share Export Service

Mobile service that renders the annual summary into a shareable static image or constructs a deep link for distribution. Uses Flutter's Repa...

medium Annual Summary (Wrapped)
Summary Aggregation Service

Server-side backend service that computes per-user yearly statistics from the activities, contacts, events, and achievements tables. Runs as...

high Annual Summary (Wrapped)
Achievement Service

Core business logic service that evaluates badge eligibility against milestone thresholds defined in achievement_types, awards badges automa...

medium Achievement Badges
Achievement Service

Core business logic service that manages badge eligibility evaluation, award processing, and progress tracking. Communicates with the backen...

medium Achievement Badges
Badge Evaluation Job

Background job that triggers badge eligibility checks in response to relevant domain events such as activity saved, expense submitted, or ce...

medium Achievement Badges
Impact Calculator Service

Pure business logic service that computes social and economic impact from peer mentor inputs. Applies organization-configurable hourly rates...

medium Advantage Calculator
Impact Calculator Service

Pure business logic service that computes social and economic impact values from user inputs. Uses organization-configurable multipliers (ho...

medium Advantage Calculator
Impact Export Service

Service responsible for generating exportable summary cards from calculated impact results. Supports PNG screenshot capture and PDF document...

medium Advantage Calculator
Cards Content Service

Business logic service responsible for loading, caching, filtering, and serving talking card content to the UI. Reads card data from the loc...

low Talking Cards Toolbox
Cards Content Service

Retrieves, filters, and shuffles talking card content from the local store. Handles optional background refresh from a versioned JSON endpoi...

low Talking Cards Toolbox
Accessibility Validation Service

Service that coordinates automated WCAG 2.2 AA validation using Flutter's SemanticsChecker and Accessibility Scanner integrations. Runs duri...

medium WCAG 2.2 AA Compliance
Accessibility Validation Service

Provides runtime and development-time checks against WCAG 2.2 AA criteria. Integrates with Flutter's SemanticsChecker to flag missing labels...

medium WCAG 2.2 AA Compliance
Keyboard Navigation Service

Manages focus traversal order, visible focus indicators, and keyboard shortcut bindings to ensure every function in the app is accessible wi...

medium shared WCAG 2.2 AA Compliance
Screen Reader Support Service

Central service governing all screen reader semantics across the mobile app. Provides utilities for wrapping widgets with Flutter Semantics ...

high shared WCAG 2.2 AA Compliance
Screen Reader Support Service

Centralizes semantic labelling logic for all interactive widgets to ensure VoiceOver (iOS) and TalkBack (Android) compatibility. Provides ut...

high shared WCAG 2.2 AA Compliance
Readout Warning Service

Business logic service that determines whether a given field is marked as sensitive based on organisation-level configuration and drives the...

medium Sensitive Field Readout Warning
Readout Warning Service

Business logic service that determines whether a given field requires a readout warning based on the organisation-level sensitivity configur...

medium Sensitive Field Readout Warning
Localization Service

Wraps Flutter's LocalizationsDelegate and the intl package to provide runtime locale resolution and language-switching across the entire app...

medium shared Sami Language Support
Localization Service

Wraps Flutter's LocalizationsDelegate and intl package to provide a runtime locale-switching API. It loads the correct ARB string bundle for...

medium shared Sami Language Support
Dashboard Service

BLoC-based service that orchestrates all data fetching for the home screen, subscribing to role-specific BLoC streams (ActivityBloc, Assignm...

high Role-Specific Home Dashboard
Dashboard Service

Orchestrates data fetching and aggregation for the role-specific home dashboard. Subscribes to appropriate BLoC streams (ActivityBloc, Assig...

medium Role-Specific Home Dashboard
Settings Service

Business logic layer that coordinates reading and writing user settings, persisting them locally and syncing relevant preferences (e.g., not...

medium App Settings & Preferences
Settings Service

Business logic layer managing reading, writing, and synchronizing user settings. Persists preferences locally via the Settings Store and syn...

low App Settings & Preferences
Links Content Service

Fetches organization-scoped external link content from the REST API and coordinates caching for offline access. Handles the sync lifecycle —...

low External Resource Links
Links Content Service

Service layer that fetches external link content from the REST API scoped to the user's organization, manages caching for offline access, an...

low External Resource Links
Support Service

Business logic layer responsible for fetching organization-specific contact configuration and submitting support message requests to the Nex...

low Contact Us
Support Service

Backend service handling support request submission, routing, and organization-specific contact configuration retrieval. Stores form submiss...

low Contact Us
Privacy Policy Content Service

Retrieves the privacy policy content either from a bundled static asset or a backend/CMS endpoint, enabling policy updates without a full ap...

low Privacy Policy
FAQ Service

Business logic layer responsible for fetching FAQ items from the backend REST API, applying client-side search and filtering by product and ...

medium FAQ
FAQ Service

Business logic layer that fetches FAQ items from the backend API, handles pagination and role-based filtering, and manages client-side searc...

low FAQ
Local Data Seeder

Populates the local SQLite store with the user's operational data subset at login time and after successful remote syncs. Seeds contacts, ac...

medium Offline Data Support
Offline Manager

Central orchestrator for offline-first operation. Monitors network connectivity, switches the data layer between local SQLite and the remote...

high Offline Data Support
Offline Manager

Core service that orchestrates offline data operations, managing the transition between online and offline modes. It coordinates data source...

high Offline Data Support
Repository Data Source Router

Implements the repository pattern abstracting data source selection from feature-level BLoC/Riverpod state. Routes read operations to the lo...

high shared Offline Data Support
Background Sync Service

Orchestrates background sync execution when the device regains connectivity. Reads the offline mutation queue from the local SQLite database...

high Background Sync
Background Sync Service

Orchestrates automatic synchronization of queued offline mutations and data refreshes when the device regains connectivity. Reads the offlin...

high Background Sync
Conflict Resolution Service

Detects and categorizes data conflicts arising when locally queued mutations clash with server-side state during background sync. Applies re...

high Background Sync
KPI Access Control Service

Enforces role-based visibility rules for dashboard metrics, ensuring coordinators only see their local association's data while org admins s...

medium Dashboard KPIs
KPI Aggregation Service

Backend service that computes all KPI metrics for the dashboard by running SQL aggregate queries against the PostgreSQL database, scoped by ...

high Dashboard KPIs
KPI Aggregation Service

Backend service that computes and aggregates key performance indicators by querying PostgreSQL with organization-scoped SQL aggregates. Hand...

medium Dashboard KPIs
Activity Feed React Query Client

Frontend data-fetching layer built on React Query (or SWR) that manages server state for the activity feed. Handles cursor-based infinite sc...

medium Activity Feed
Activity Feed Service

Backend API route and business logic layer that serves paginated, filtered activity feed data to the admin portal. Executes cursor-based pag...

medium Activity Feed
Activity Feed Service

Backend service that powers the activity feed by querying activities with cursor-based pagination on created_at for stable ordering under co...

medium Activity Feed
Role Scope Resolver

Shared service that determines the data visibility scope for the authenticated user based on their role. Coordinators are scoped to their lo...

low shared Activity Feed
User Service

Business logic layer for all user lifecycle operations in the admin portal, including invitation, profile updates, deactivation, and search....

medium User CRUD
User Service

Backend service layer handling all user lifecycle operations including invitation-based creation, profile updates, and soft deactivation. En...

medium User CRUD
Role Assignment Service

Backend service encapsulating all business logic for assigning and revoking user roles. Enforces escalation restrictions (e.g. Org Admin can...

medium Role Assignment
Role Assignment Service

Backend service encapsulating role assignment business logic. Validates role changes against the permission hierarchy (e.g., Org Admin canno...

medium Role Assignment
Bulk User Processing Service

Backend service that receives bulk operation requests dispatched as PATCH requests to /api/v1/users/bulk. Validates each user ID against the...

medium Bulk Actions
Bulk User Processing Service

Backend service that validates and executes bulk user operations within a single PostgreSQL transaction to guarantee atomicity. Validates ea...

high Bulk Actions
Activity Approval Service

Core backend service handling the approve, reject, and correct operations on activity registrations. Applies optimistic locking to prevent c...

high Activity Review & Approval
Activity Approval Service

Backend service handling the approval and rejection workflow for submitted activities. Implements optimistic locking to prevent concurrent a...

medium Activity Review & Approval
Audit Log Service

Shared service that writes structured audit log entries for all approval workflow actions, capturing reviewer identity, timestamp, old and n...

medium shared Activity Review & Approval
Review Queue Service

Server-side service that queries the activities table for records with pending_review status, scoped to the authenticated coordinator's loca...

medium Activity Review & Approval
Activity Flagging Service

Core business logic service for creating, managing, and resolving activity flags. Enforces role-based resolution gating, coordinates with th...

medium Activity Flagging
Activity Flagging Service

Backend service managing the full lifecycle of activity flags including creation, resolution, and automated duplicate detection. Handles fla...

medium Activity Flagging
Duplicate Detection Service

Background service that runs on activity insert to detect suspected duplicate registrations. Compares contact_id, date, and activity_type wi...

medium Activity Flagging
Audit Log Service

Shared service that persists structured audit trail entries for all approval actions in the system. Used by expense approval, activity appro...

medium shared Expense Approval Queue
Expense Approval Service

Core business logic service handling all approval lifecycle operations for expense claims. Orchestrates status transitions, enforces role-ba...

high Expense Approval Queue
Expense Approval Service

Backend service handling the business logic for expense claim review workflows. Processes individual and batch approval/rejection requests v...

medium Expense Approval Queue
Auto-Approval Rule CRUD Service

REST API handler for managing auto-approval rule configuration, used exclusively by the admin portal. Enforces that only Org Admins can modi...

low Auto-Approval Rules
Auto-Approval Rule Engine

Core backend service that synchronously evaluates an expense claim against all applicable auto-approval rules for the submitting organizatio...

medium Auto-Approval Rules
Auto-Approval Rule Engine

Backend service that manages auto-approval rule CRUD operations and evaluates submitted expenses against configured rules. When an expense i...

medium Auto-Approval Rules
Reimbursement Export Service

Next.js API route handler at /api/v1/reimbursements/export that streams reimbursement result sets as downloadable CSV or Excel files. Applie...

medium Reimbursement Overview
Reimbursement Service

Core backend service orchestrating reimbursement data aggregation for the overview dashboard. Executes PostgreSQL CTEs and window functions ...

high Reimbursement Overview
Reimbursement Service

Backend service that aggregates reimbursement data from the reimbursements, expenses, expense_approvals, and users tables using PostgreSQL w...

medium Reimbursement Overview
Report Access Control Service

Service that enforces data scoping rules for report queries based on the authenticated user's role and association membership. Coordinators ...

medium shared Team Reports
Report Generation Service

Backend service that executes aggregation queries against PostgreSQL using window functions and GROUP BY clauses to produce pre-aggregated r...

high Team Reports
Report Generation Service

Backend service responsible for aggregating activity data into team-level reports. Executes PostgreSQL queries with window functions and GRO...

medium Team Reports
Bufdir Export Service

Core server-side service that orchestrates the full Bufdir export pipeline. Queries activity records for the selected reporting period, appl...

high Bufdir Export
Bufdir Export Service

Server-side service that orchestrates the full Bufdir export pipeline: queries activity data for the selected reporting period from PostgreS...

high Bufdir Export
Bufdir Field Mapper

Maps internal Meander activity and participant data to the exact fields and format required by the current Bufdir reporting standard. Reads ...

high Bufdir Export
Export Audit Logger

Records structured audit log entries for every Bufdir export action. Captures the exporting user's ID, the organization, the reporting perio...

low shared Bufdir Export
Custom Report Service

The primary backend service orchestrating custom report execution. Receives a declarative report specification (fields, filters, grouping, s...

high Custom Reports
Custom Report Service

Backend service that receives declarative report specifications, validates them against an allowed-fields whitelist, constructs dynamic SQL ...

high Custom Reports
Report Configuration Persistence Service

Manages CRUD operations for saved report configurations stored in the report_configs table. Handles ownership checks, organization-wide shar...

medium Custom Reports
Report Export Service

Generates downloadable CSV and XLSX files from report result sets. Streams large result sets to avoid memory exhaustion. Used by Custom Repo...

medium shared Custom Reports
Report Export Service

Generates downloadable CSV and XLSX files from report result sets. Handles column header formatting, data type serialization, and file strea...

medium shared Custom Reports
Report Query Builder

Server-side query builder class that translates declarative report specifications into parameterized SQL queries. Validates all fields again...

high Custom Reports
Report Query Builder Service

Translates a validated declarative report specification into a parameterized PostgreSQL query. Maintains a server-side whitelist of permitte...

high Custom Reports
Organization Service

Backend service layer handling all organization settings mutations and queries, consuming the REST API endpoint PATCH /api/v1/organizations/...

medium Organization Settings
Organization Service

Backend service handling organization settings CRUD operations via the REST API endpoint PATCH /api/v1/organizations/:id. Enforces row-level...

medium Organization Settings
Terminology Context Provider

Next.js server-side context provider injected into the admin portal layout that resolves all UI labels for the requesting organization befor...

medium shared Custom Terminology
Terminology Service

Backend service responsible for reading, writing, and validating organization terminology maps stored as JSONB in the organization_settings ...

medium shared Custom Terminology
Terminology Service

Backend service that manages the terminology override map for each organization. Handles CRUD operations on the JSONB terminology column in ...

medium shared Custom Terminology
Feature Flag Service

Backend service responsible for reading and writing feature flag state per organization. Reads from a Redis cache (TTL 60s) backed by Postgr...

medium Feature Toggles
Feature Flag Service

Backend service managing feature flag CRUD operations, cache invalidation, and propagation. Reads the static feature registry for known feat...

medium Feature Toggles
Feature Registry Loader

Loads the static feature registry file that defines all known feature keys, their default states, human-readable descriptions, and documenta...

low shared Feature Toggles
Aggregate Report Service

Computes rolled-up statistics for a given organization by aggregating data from all descendant organizations using nightly-refreshed Postgre...

medium Multi-Organization Hierarchy
Hierarchy Access Control Service

Resolves which nodes in the organization tree the requesting admin is authorized to view or modify. Global Admins bypass all scope restricti...

high shared Multi-Organization Hierarchy
Hierarchy Scope Resolver

Resolves the effective organization scope for a given user based on their JWT claims and role assignments. Determines which organizations a ...

medium shared Multi-Organization Hierarchy
Hierarchy Service

Core backend service exposing the organization hierarchy API. Handles CRUD operations for creating child organizations, moving nodes within ...

high Multi-Organization Hierarchy
Hierarchy Service

Backend service managing the organizational hierarchy using a closure table pattern in PostgreSQL. Provides efficient ancestor/descendant qu...

high Multi-Organization Hierarchy
Association Service

Core backend service responsible for all business logic around user-to-local-association membership management. Enforces the single-primary-...

medium shared Member Associations
Association Service

Backend service managing the many-to-many relationship between users and local associations. Handles CRUD operations on user_local_associati...

medium Member Associations
Duplicate Reporting Detector

A service component that analyses user activity records across their multiple association memberships to identify and flag potential double-...

medium Member Associations
Credential Manager Service

Handles secure storage and retrieval of API credentials for the external portal using envelope encryption. Encrypts credentials at rest with...

high External Portal Integration
External Portal Service

Abstract service interface that encapsulates all interaction with HLF's Dynamics-based external portal. Implements the adapter pattern so fu...

high External Portal Integration
External Portal Service

Core business logic service behind an abstract ExternalPortalService interface that orchestrates data synchronization between Meander and ex...

high External Portal Integration
Sync Orchestration Service

Coordinates the dual sync strategy: event-driven webhook processing when the external portal supports it, falling back to scheduled polling....

high External Portal Integration
Accounting API Service

Core backend service orchestrating the export of approved expense reimbursements to external accounting systems. Handles batch transactional...

high Accounting API
Accounting API Service

Core backend service orchestrating expense export to external accounting systems. Manages transactional batch exports with all-or-nothing se...

high Accounting API
Accounting Export Scheduler

Manages scheduled and on-demand export job lifecycle for accounting integrations. Reads per-organisation export schedules, enqueues export j...

medium Accounting API
Accounting Mapping Service

Manages the mapping between Meander expense types and each organization's chart-of-account codes. Validates that all expense types used in a...

medium Accounting API
Security Alert Evaluator

Evaluates computed security metrics against configurable threshold rules to generate actionable alerts. Assigns severity levels and deduplic...

medium Security Dashboard
Security Monitoring Service

Server-side service that runs scheduled aggregation queries against the audit_logs and sessions tables to compute security metrics. Results ...

high Security Dashboard
Security Monitoring Service

Server-side service that runs scheduled aggregation queries over audit_logs and sessions tables to compute security metrics. Caches computed...

medium Security Dashboard
Audit Log Service

Centralized service responsible for emitting, querying, and exporting audit log entries. Inserts append-only records within the same databas...

high shared Audit Log
Audit Log Service

Centralized backend service responsible for emitting and querying audit events. All write operations across the API layer emit audit events ...

high Audit Log
Session Service

Core backend service exposing REST endpoints for listing and revoking sessions. Enforces authorization scoping — Org Admin sees only their o...

high Session Management
Session Service

Backend service exposing REST endpoints for listing, inspecting, and revoking user sessions. Handles authorization scoping (user-own, org-sc...

medium Session Management
Content Service

Provides structured page content for the landing page, separating data from presentation to support future A/B testing and multi-language va...

low Product Landing Page
Content Service

Provides structured page content for the landing page, separating data from presentation. Fetches hero text, benefit descriptions, social pr...

low Product Landing Page
Feature Content Service

Provides structured feature data — titles, descriptions, icons, and product-area groupings — consumed by the Features Page at build time via...

low Feature Overview
Feature Content Service

Provides structured feature data including titles, descriptions, icons, and product-area groupings to the Features Page. Abstracts content r...

low Feature Overview
Impact Calculator Service

Pure client-side computation service that applies static benchmark multipliers to user-provided inputs to produce personalized impact estima...

low Impact Calculator
Impact Calculator Service

Client-side calculation engine that computes organizational impact estimates from user inputs using static benchmark multipliers derived fro...

medium Impact Calculator
Pricing Service

Retrieves and structures pricing tier data and total cost of ownership calculations across a one-to-three year horizon. Sources data from en...

low Cost Comparison
Pricing Service

Provides structured pricing and feature-inclusion data for each Meander tier and the current-state baseline. Reads from a static JSON config...

low Cost Comparison
Booking Service

Server-side REST API handler that processes demo booking form submissions, persists lead data to PostgreSQL, and triggers automated follow-u...

medium Booking Form
Booking Service

Server-side service handling demo booking form submissions via a REST API endpoint. Validates incoming data, persists leads and bookings to ...

medium Booking Form
Confirmation Email Service

Orchestrates post-submission confirmation logic, including resolving the masked lead reference to booking details and triggering transaction...

low Booking Confirmation
Confirmation Email Service

Backend service responsible for sending transactional confirmation emails to prospects after demo booking submission. Uses a pre-designed HT...

low Booking Confirmation
DPA Content Provider

Loads and provides DPA article content from MDX source or CMS, enabling legal team updates without code deploys. Parses structured article s...

low shared DPA
Cookie Consent Service

Central service managing the full consent lifecycle on the sales website. Reads and writes consent state to localStorage, gates analytics an...

medium shared Cookie Policy
Cookie Consent Service

Lightweight client-side service managing consent state persistence, providing a Consent API that embedded scripts and third-party integratio...

medium shared Cookie Policy
SLA Content Service

Loads and parses SLA document content from MDX files or a lightweight CMS, providing structured section data to the page component. Handles ...

low Service-Level Agreement
SLA Content Service

Fetches and structures the SLA document content from MDX or a lightweight CMS, enabling non-developer updates to uptime targets, support tie...

low Service-Level Agreement