54
Total Data Layer
22
Low Complexity
29
Medium Complexity
3
High Complexity
9
Shared

Data Layer components manage data persistence, storage operations, and data access patterns throughout the application.

Organizations Repository

Data access layer that abstracts all persistence and retrieval operations for organization data. Communicates with the REST API client to fe...

low Organization Selection & Onboarding
Token Storage

Secure persistent storage for JWT access and refresh tokens using Flutter Secure Storage, backed by iOS Keychain and Android Keystore. Passw...

low shared Email & Password Login
Auth Token Repository

Data access layer for persisting and retrieving authentication tokens, session records, and identity provider linkages. Shared with the Emai...

medium shared BankID & Vipps Authentication
Secure Credential Store

Manages persistent storage of the refresh token in the device's secure enclave using Flutter Secure Storage with AES-256 encryption at rest....

low Biometric Authentication (Face ID / Fingerprint)
Permissions Repository

Caches the role-permission matrix locally on the device to allow the Role Guard Service to evaluate permissions without a network call, supp...

medium Role-Based Access Control
Activity Repository

Data access layer managing all CRUD operations for activities and activity types against the local SQLite database and the remote PostgreSQL...

medium Simple Activity Logging with Default Values
Activity Repository

Data access layer for activity records supporting both online REST API writes and offline local SQLite reads. Shared with the simple activit...

medium shared Activity Registration Wizard
Contact Repository Cache

Read-only local cache of contact records enabling offline contact search within the wizard contact step. Synchronizes from the server on app...

low shared Activity Registration Wizard
Wizard Persistence Repository

Local storage adapter that serializes and deserializes in-progress wizard drafts as JSON, ensuring activity registration survives app backgr...

low Activity Registration Wizard
Event Repository

Data access layer persisting event records and the event_attendees join table locally via SQLite for offline support. Syncs with the backend...

medium Event Creation & Management
Attachment Repository

Persists document attachment metadata to the PostgreSQL database, storing filename, MIME type, file size, storage key, upload timestamp, and...

low Document Attachment to Activities
Report Template Repository

Persists report template configurations in the local SQLite database to enable offline form completion. Manages cache invalidation and synch...

low Formalized Home Visit Report Structure
Contact Repository

Data access layer abstracting local SQLite reads/writes for contact entities and synchronizing with the remote REST API. Implements the repo...

medium Contact List & Search
Contact Repository

Data access layer for the contacts table, shared across Contact List & Search and Contact Detail & Edit features. Abstracts REST API calls a...

medium shared Contact Detail & Edit
Peer Mentor Repository

Data access layer for peer mentor entities, abstracting REST API calls and local SQLite cache reads. Supports offline-first reads via the lo...

medium Peer Mentor Profile & Management
Caregiver Repository

Data access layer for the caregivers table, providing parameterized query execution to prevent SQL injection. Maps between database rows and...

low Caregiver & Next-of-Kin Database
Peer Mentor Status Repository

Data access layer for reading and writing peer mentor status log entries in the peer_mentor_status_logs table. Provides typed query methods ...

low Peer Mentor Pause & Temporary Deactivation
Notes Repository

Data access layer that wraps all database operations for the notes table, including CRUD operations, soft-delete support, and FTS5 full-text...

low Notes
Peer Mentor Location Repository

Data access layer responsible for reading and writing lat/lng coordinates stored in the peer_mentors table. Provides filtered queries to fet...

low Geographic Map View for Peer Mentor Matching
Statistics Repository

Data access layer that abstracts the source of statistics data, routing reads to the REST API when online and to the local Drift/SQLite cach...

medium Personal Activity Statistics
Team Report Repository

Data access layer that executes PostgreSQL CTE-based aggregation queries to compute per-peer-mentor activity totals scoped to a coordinator'...

high Coordinator Team Reports
Bufdir Report Repository

Data access layer for the bufdir_reports table, managing persistence of generated report metadata, audit history, and field snapshots. Ensur...

low Bufdir Report Generation & Export
Duplicate Audit Repository

Persists duplicate detection events for coordinator audit review as required by the feature specification. Stores each detection with metada...

low Duplicate Activity Detection
Expense Repository

Data access layer for the expenses and expense_types PostgreSQL tables. Provides typed CRUD operations and query methods used by the Expense...

medium Travel & Expense Registration
Receipt Repository

Data access layer for all receipt records in the PostgreSQL database. Manages CRUD operations on the receipts table, maintains the foreign k...

low Receipt Photo Upload
Reimbursement Repository

Data access layer for reimbursements and approval records in PostgreSQL. Provides typed query methods for the approval workflow including fe...

medium Automated & Manual Reimbursement Approval
Assignment Repository

Provides CRUD data access for the assignments and assignment_status_logs tables. Stores only ciphertext and metadata on the backend — plaint...

medium Encrypted Assignment Dispatch & Tracking
Honorarium Repository

Data access layer responsible for reading and writing honorarium threshold configurations from the honorarium_thresholds table and persistin...

medium Assignment Count & Honorarium Threshold Tracking
Notification Repository

Data access layer for notification records and per-user notification settings, communicating with the backend REST API to fetch paginated no...

medium Push Notifications
Reminder Repository

Data access layer for all reminder and notification preference persistence. Manages CRUD operations on the reminders table and the notificat...

medium Scenario-Based Reminders & Automated Follow-Up Alerts
Calendar Sync Repository

Data access layer responsible for persisting and retrieving calendar synchronization preferences from the database. Stores per-user iCal tok...

low Calendar Synchronization
Dashboard Repository

Data access layer that fetches aggregated dashboard metrics from the REST API backend for each role variant. Implements local caching to sup...

low Role-Specific Home Dashboard
Settings Repository

Data access layer that abstracts both the local key-value store (shared_preferences) and the remote REST API backend behind a single clean i...

low App Settings & Preferences
Resource Repository

Fetches the organization-scoped resource list from the REST API and caches it locally for offline access using an ETag or last-modified head...

low External Resource Links
Toolbox Content Repository

Data access layer managing CRUD operations for talking cards and toolbox resources. Abstracts both the remote REST API endpoint and the loca...

medium Talking Cards & Resource Toolbox
User Repository

Data access layer for user records and role-organization assignments. Provides typed query methods for the admin panel's user management ope...

medium User Management
Organization Labels Repository

Data access layer for the organization_labels table, which stores key-value label pairs scoped per organization. Supports bulk upsert for te...

low Organization Settings & Terminology Configuration
Analytics Repository

Data access layer providing optimized aggregate query methods against the PostgreSQL database for KPI computation. All queries use parameter...

medium Admin Dashboard & KPIs
Activity Approval Repository

Data access layer for reading and writing activity approval state and associated audit records. Manages the approval status enum field on th...

medium Activity Oversight & Approval Workflows
Bufdir Report Repository

Data access layer for the bufdir_reports and reports tables. Executes the complex aggregate SQL query joining activities, users, organizatio...

high Admin Bufdir Report Export
Reimbursement Admin Repository

Data access layer optimized for the admin oversight use case, providing complex filtered and paginated queries that join reimbursements, exp...

medium shared Admin Reimbursement Oversight
Organization Repository

Data access layer for the full organizational hierarchy including organizations, regions, and local associations. Executes all SQL queries w...

high shared Multi-Organization Hierarchy Management
Association Membership Repository

Data access layer responsible for all CRUD operations on user-to-association membership records, backed by the user_organization_roles table...

medium Member Multi-Association Membership
Integration Repository

Data access layer for the integrations table, managing CRUD operations for per-organization integration configurations including credentials...

medium External Portal & Accounting System Integration
Course Repository

Data access layer for all course and enrollment persistence operations against the PostgreSQL database. Handles CRUD for courses and course_...

medium Course Registration & Management
Certificate Repository

Data access layer for the certifications table, providing CRUD operations and query methods for certification records. Handles all persisten...

low Digital Peer Mentor Certificate & Credentials
Workshop Repository

Data access layer for mentor program sessions and workshop participants. Handles all CRUD operations against the mentor_program_sessions and...

medium Mentor Program & Career Workshop Notes
Referral Repository

Data access layer for the recruitment_referrals table, managing persistence of referral tokens, referring user associations, and conversion ...

low Membership Recruitment Feature
Annual Summary Repository

Data access layer for the annual_summaries table. Manages CRUD operations for pre-computed peer mentor annual summary records including all ...

medium Annual Activity Summary (Peer Mentor Wrapped)
Badge Repository

Data access layer managing all read and write operations against the badges and user_badges database tables. Handles badge definition CRUD, ...

medium Achievement Badges & Status Recognition
Advantage Config Repository

Data access layer responsible for retrieving and locally caching the advantage calculator configuration from the backend REST API. Handles H...

low Peer Mentor Advantage Calculator
Local Cache Repository

Provides read and write access to the local SQLite mirror of server-side data required for offline operation — specifically activities, cont...

medium shared Offline Support & Data Sync
Offline Queue Repository

Manages the persistent FIFO queue of serialized mutation operations captured while the device is offline or the backend is unreachable. Each...

medium Offline Support & Data Sync
Audit Log Repository

Persists security-relevant events to a dedicated PostgreSQL audit_logs table with tamper-evident append-only semantics. Records authenticati...

medium shared Security & Encryption Infrastructure