medium complexity extracted Accessibility Confidence: 100%
3
Components
32
Shared
0
User Stories
Yes
Analyzed

Description

This feature adds Northern Sami as a supported language in the Meander Mobile App, allowing the full UI - including labels, navigation, error messages, and dynamic organization terminology - to be displayed in Sami. The localization system must support runtime language switching without requiring an app restart, and must integrate with the existing organization labels system so that custom terminology overrides defined by admins can also be provided in Sami. This feature is identified by NHF due to their explicit Sami affiliation and user base in northern Norway.

User Flow

Sami Language Support user flow
Click to expand

Analysis

Business Value

NHF has a documented Sami-language user community in northern Norway, and excluding Sami speakers from full native-language access to the platform creates both an equity issue and a practical barrier to adoption within that segment. Sami language support also positions Meander as a platform committed to indigenous language rights and cultural inclusion, which is relevant for public sector funding considerations and Bufdir alignment. While the immediate user volume may be modest, the strategic signal it sends to prospective client organizations in the Nordic public and disability sector is disproportionately valuable relative to the implementation effort.

Implementation Notes

Use Flutter's built-in internationalization framework (flutter_localizations and the intl package) with ARB files as the source of truth for all translatable strings. Add a Northern Sami (se) locale ARB file alongside the existing Norwegian (nb) and English (en) files. Integrate with the organization terminology override system so that admins can supply Sami-language label overrides via the admin portal, which are then fetched and applied at runtime alongside the base ARB translations. Language selection should be stored in user preferences (Preferences Repository) and applied on app startup. Engage a qualified Sami language translator for all strings - do not use machine translation for production content. Test with right-to-left layout checks even though Sami is LTR, to ensure the localization pipeline handles all edge cases.

Components (35)

User Interface (1)

Service Layer (1)

Infrastructure (1)

Shared Components

These components are reused across multiple features

User Stories

No user stories have been generated for this feature yet.