84
Total Service Layer
8
Low Complexity
44
Medium Complexity
32
High Complexity
13
Shared

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

Organization Service

Business logic layer responsible for fetching, caching, and managing the active organization context throughout the app session. Loads the o...

medium Organization Selection & Onboarding
Auth Service

BLoC-based service that orchestrates the email and password authentication flow against the REST API. Submits credentials to POST /api/v1/au...

medium shared Email & Password Login
BankID Integration Service

Backend service that abstracts the BankID OIDC provider flow behind a common authentication interface. Handles OAuth authorization code exch...

high BankID & Vipps Authentication
Identity Verification Service

Shared backend service that provides a provider-agnostic interface for linking verified external identities (BankID or Vipps) to platform us...

high BankID & Vipps Authentication
Vipps Integration Service

Backend service that abstracts the Vipps Login OAuth flow behind the same common authentication interface as BankID. In addition to standard...

high BankID & Vipps Authentication
Biometric Auth Service

Core service that orchestrates biometric authentication using the local_auth Flutter plugin. Handles capability detection, invokes the OS bi...

medium Biometric Authentication (Face ID / Fingerprint)
Role Guard Service

A Riverpod provider that reads the authenticated user's role and organization context from app state and exposes a permission-checking API c...

medium shared Role-Based Access Control
Activity Service

Core business logic service orchestrating activity creation, validation, and submission. Implements optimistic saving — the activity is imme...

medium Simple Activity Logging with Default Values
Default Values Provider

Service responsible for computing and injecting intelligent default values into the activity form to minimize cognitive load for peer mentor...

low Simple Activity Logging with Default Values
Activity Service

Shared business logic service for creating, updating, and submitting activities. Used by both the simple activity logging flow and the multi...

medium shared Activity Registration Wizard
Wizard State Manager

BLoC (Business Logic Component) that owns and persists all wizard form state across steps, serializing in-progress registration to local sto...

high Activity Registration Wizard
Event Service

Business logic layer managing event lifecycle operations including creation, updates, cancellation, and attendance tracking. Communicates wi...

medium Event Creation & Management
Speech Recognition Service

Manages the full lifecycle of speech recognition by delegating to the Flutter speech_to_text plugin, which invokes native platform APIs (iOS...

medium Speech-to-Text Input for Reports
Proxy Registration Service

Business logic service that handles submission of proxy and bulk activity registrations. Accepts a single activity payload plus a list of ta...

high Bulk Registration & Proxy Reporting
Document Upload Service

Orchestrates the two-phase file upload process: first calls the backend API to obtain a signed storage URL, then PUTs the file directly to t...

medium Document Attachment to Activities
File Validation Service

Performs client-side validation of selected files before upload begins, enforcing allowed MIME types (images and PDFs) and a configurable ma...

low Document Attachment to Activities
Report Template Service

Fetches and manages the active report template configuration from the backend endpoint /api/v1/report-templates, allowing organization admin...

medium Formalized Home Visit Report Structure
Contact Service

Core business logic layer managing contact lifecycle operations including retrieval, role-filtered listing, and coordination with the offlin...

medium Contact List & Search
Role Guard Service

Injects the authenticated user's role into query contexts to enforce data access boundaries. Shared service originating from the Role-Based ...

low shared Contact List & Search
Search Service

Handles full-text search across contacts and notes using the local SQLite FTS5 index as the primary source and a debounced REST API call to ...

medium Contact List & Search
Contact Service

Business logic layer for contact CRUD operations, shared across the Contact List & Search and Contact Detail & Edit features. Handles REST A...

medium shared Contact Detail & Edit
Peer Mentor Service

Business logic layer for all peer mentor domain operations, exposing a typed PeerMentor domain model to the UI. Handles status transitions (...

medium Peer Mentor Profile & Management
Caregiver Service

Business logic layer for all caregiver and next-of-kin operations. Validates input data at the service layer before passing to the repositor...

medium Caregiver & Next-of-Kin Database
Pause Mentor Service

Core business logic service that orchestrates the full pause and resume lifecycle for a peer mentor. Exposes pauseMentor() and resumeMentor(...

medium Peer Mentor Pause & Temporary Deactivation
Pause Notification Service

Responsible for notifying the relevant coordinator whenever a peer mentor's pause status is activated or lifted. Resolves the correct coordi...

medium Peer Mentor Pause & Temporary Deactivation
Notes Service

Business logic layer for the notes feature handling persistence, access control, and search index registration. Enforces row-level security ...

medium Notes
Location Service

Business logic service handling all geospatial operations for the map feature. Delegates geocoding and reverse geocoding to the backend API ...

medium Geographic Map View for Peer Mentor Matching
Statistics BLoC

Flutter BLoC (or Riverpod notifier) that manages filter state and async data loading for the personal statistics dashboard. Handles events f...

medium Personal Activity Statistics
Statistics Service

Orchestrates retrieval and caching of personal statistics data. Calls the REST API to fetch pre-aggregated rollups and falls back to the loc...

medium Personal Activity Statistics
Report Export Service

Server-side Next.js service that generates CSV or PDF exports of team reports based on query parameters, keeping mobile payload small. Enfor...

medium Coordinator Team Reports
Team Report Service

Core business logic service that fetches and aggregates team activity data from the backend REST API, applying the coordinator's association...

medium Coordinator Team Reports
Bufdir Field Mapper Service

Translates the internal aggregated report object into the exact field structure required by Bufdir's grant reporting format, reverse-enginee...

high Bufdir Report Generation & Export
Bufdir Report Service

The core server-side service that orchestrates Bufdir report generation by querying activities, users, organizations, and related tables for...

high Bufdir Report Generation & Export
Report Aggregation Service

Executes the complex SQL aggregation queries that compile all relevant activity data for a reporting period into a structured intermediate o...

high Bufdir Report Generation & Export
Duplicate Detection Service

Backend service that performs a lightweight duplicate check against the activities table when called from the activity wizard summary step. ...

medium Duplicate Activity Detection
Expense Service

Core business logic service orchestrating the full expense registration workflow. Handles creation, submission, and retrieval of expense rec...

high Travel & Expense Registration
Expense Validation Service

BLoC-based validation service that enforces expense type mutual-exclusion rules and business constraints at the application layer. Prevents ...

medium Travel & Expense Registration
Receipt Threshold Validator

Evaluates whether a given expense amount exceeds the organization's configured receipt requirement threshold (e.g., 100 NOK for HLF) and ret...

low Receipt Photo Upload
Receipt Upload Service

Orchestrates the full receipt upload workflow: compresses the captured image, sends it to the Next.js backend via multipart POST (/api/v1/re...

medium Receipt Photo Upload
Approval Queue BLoC

Flutter BLoC that manages the client-side state of the coordinator's approval queue, including pagination, filter state, real-time refresh v...

medium Automated & Manual Reimbursement Approval
Approval Threshold Service

Rule evaluation service that compares reimbursement claim attributes (distance in km, out-of-pocket expense amount, receipt presence) agains...

medium Automated & Manual Reimbursement Approval
Reimbursement Approval Service

Core backend service that orchestrates the two-track approval workflow. On claim submission it invokes the Approval Threshold Service to det...

high Automated & Manual Reimbursement Approval
Assignment Status Tracker

Monitors and enforces the valid state machine for assignment lifecycle transitions on the backend. Validates that transitions follow the cor...

medium Encrypted Assignment Dispatch & Tracking
Encrypted Messaging Service

Core service orchestrating the full lifecycle of encrypted assignment dispatch. Encrypts assignment payloads locally on the coordinator's de...

high Encrypted Assignment Dispatch & Tracking
Honorarium Notification Service

Listens for threshold-crossing events emitted by the Threshold Tracking Service and dispatches coordinator-targeted push notifications throu...

medium Assignment Count & Honorarium Threshold Tracking
Threshold Tracking Service

Core business logic service that maintains per-peer-mentor assignment counters, evaluates tier boundaries against per-association threshold ...

high Assignment Count & Honorarium Threshold Tracking
Push Notification Service

Core service managing the full lifecycle of push notifications on the mobile client, including FCM token registration, permission request fl...

high Push Notifications
Reminder Service

Core business logic service that manages the full lifecycle of scenario-based reminders. It evaluates scenario rules against current applica...

high Scenario-Based Reminders & Automated Follow-Up Alerts
Calendar Integration Service

Business logic service that orchestrates calendar synchronization between the platform and external calendar applications. Handles one-tap e...

medium Calendar Synchronization
Dashboard Service

Business logic service responsible for resolving the authenticated user's role and assembling the role-appropriate dashboard data payload. C...

medium Role-Specific Home Dashboard
Settings Service

Business logic layer for the settings feature, orchestrating reads and writes across the local key-value store (shared_preferences) and the ...

low App Settings & Preferences
External Link Service

Handles the opening of external URLs using either the system browser or an in-app WebView depending on per-resource configuration. Validates...

low External Resource Links
Toolbox Content Service

Business logic layer responsible for fetching, caching, and surfacing the organization-scoped collection of talking cards and toolbox resour...

medium Talking Cards & Resource Toolbox
Email Invitation Service

Handles the composition and dispatch of user invitation emails via a transactional email provider such as Resend or SendGrid. Generates time...

medium shared User Management
User Management Service

The core backend service handling all user lifecycle operations within the admin panel. Enforces multi-tenancy boundaries so that each admin...

high User Management
Organization Settings Service

Backend service handling CRUD operations for organization-level settings including contact details, logo management, and feature toggle flag...

medium Organization Settings & Terminology Configuration
Analytics Service

Backend service that computes and serves aggregated KPI metrics for the admin dashboard. Executes optimized PostgreSQL aggregate queries par...

high Admin Dashboard & KPIs
Dashboard Scope Service

Resolves the data visibility scope for a given authenticated user and role before dashboard queries are executed. Maps the user's role and o...

medium Admin Dashboard & KPIs
Activity Oversight Service

Backend service that handles all coordinator oversight operations for submitted activities. Enforces coordinator scope validation to ensure ...

high Activity Oversight & Approval Workflows
Oversight Audit Log Service

Specialized service responsible for recording immutable audit trail entries whenever an approval action is taken on an activity. Ensures com...

medium shared Activity Oversight & Approval Workflows
Admin Export Service

Orchestrates the full Bufdir report export workflow for administrators. Accepts export parameters, invokes the backend report generation end...

high Admin Bufdir Report Export
Admin Reimbursement Service

Core backend service encapsulating all admin-facing reimbursement operations including filtered listing, individual approval and rejection, ...

high Admin Reimbursement Oversight
Reimbursement Approval Audit Logger

Service responsible for writing immutable audit log entries whenever a reimbursement is approved, rejected, or included in a bulk action. Re...

low shared Admin Reimbursement Oversight
Organization Hierarchy Service

Core service managing the three-tier organizational tree of national chapters, regions, and local associations. Handles tree traversal, node...

high Multi-Organization Hierarchy Management
Context Management Service

Flutter BLoC-based service that stores and broadcasts the active association context throughout the app session. All API calls inject the ac...

medium shared Member Multi-Association Membership
Membership Service

Core business logic service responsible for managing a user's multi-association membership lifecycle. Handles fetching all associations for ...

medium Member Multi-Association Membership
External API Integration Service

Core orchestration service that manages all outbound integration calls to external systems. Routes requests to the appropriate adapter based...

high External Portal & Accounting System Integration
Course Management Service

Core business logic service for course listing, enrollment lifecycle, capacity enforcement, and reminder scheduling. Orchestrates enrollment...

high Course Registration & Management
Certification Service

Core service managing the full certification lifecycle for peer mentors, including issuance, renewal, expiry evaluation, and revocation. Tri...

high Digital Peer Mentor Certificate & Credentials
Mentor Program Service

Core business logic service for managing mentor program sessions and career workshops. Orchestrates session creation, updates, participant m...

medium Mentor Program & Career Workshop Notes
Recruitment Service

Backend service responsible for generating short-lived referral tokens per peer mentor and recording attribution when a referred individual ...

low Membership Recruitment Feature
Annual Summary Aggregation Job

Backend scheduled job that runs once per year (January) to pre-compute annual summary data for all active peer mentors. Queries all activity...

high Annual Activity Summary (Peer Mentor Wrapped)
Annual Summary Service

Core service that orchestrates retrieval and presentation logic for the peer mentor's annual summary. Fetches pre-computed summary data from...

high Annual Activity Summary (Peer Mentor Wrapped)
Statistics Service

Shared service that provides aggregated activity and contact statistics for a given user and time range. Used by both the Personal Activity ...

medium shared Annual Activity Summary (Peer Mentor Wrapped)
Summary Share Asset Service

Backend service responsible for generating static shareable assets (PNG image card or PDF) from a peer mentor's annual summary. Renders a pr...

high Annual Activity Summary (Peer Mentor Wrapped)
Achievement Service

Core business logic service responsible for evaluating badge trigger conditions and awarding badges to users. Runs nightly evaluation jobs c...

high Achievement Badges & Status Recognition
Badge Evaluation Scheduler

Infrastructure service that schedules and triggers the nightly badge evaluation job. Integrates with the backend job scheduling system to in...

medium Achievement Badges & Status Recognition
Advantage Calculation Service

Core client-side calculation engine that fetches the peer mentor's activity and reimbursement history from the REST API and applies organiza...

high Peer Mentor Advantage Calculator
Benefit Configuration Service

Fetches and caches the organization-specific benefit category configuration stored as JSON in the PostgreSQL database. Provides the calculat...

medium Peer Mentor Advantage Calculator
REST API Client

Centralized HTTP client for the Flutter mobile app that handles all communication with the Next.js backend. Provides a typed, unified interf...

high shared REST API Backend
Accessibility Service

Central service managing runtime accessibility state, screen reader detection, font scaling, and focus traversal order across the applicatio...

high shared Design System & Accessibility (WCAG 2.2 AA)
Conflict Resolution Service

Implements the server-wins conflict resolution strategy for cases where a locally queued mutation conflicts with a server-side change detect...

medium Offline Support & Data Sync
Sync Service

Core orchestration service responsible for reconciling locally queued mutations with the backend REST API when connectivity is restored. Pro...

high Offline Support & Data Sync
Encryption Service

Provides AES-256-GCM symmetric encryption for sensitive fields at rest. Wraps key derivation logic with per-user keys stored in secure stora...

high shared Security & Encryption Infrastructure