Peer Mentor Map
Feature Detail
Description
Interactive geographic map view displaying peer mentor locations across the organization's coverage area. The map enables coordinators to visualize mentor distribution geographically, identify coverage gaps, and make informed dispatch decisions based on proximity. Particularly valuable for organizations operating across large geographic regions like Norway's expansive counties. The feature renders mentor locations with appropriate privacy controls, supports filtering by mentor status and certification, and integrates with map tile providers for base cartography. Users can pan, zoom, and select mentors to view profile details and current assignment status.
Sources & reasoning
Listed in §8 area taxonomy as a feature of geographic-map-view area. §3.1 identifies it as a Blindeforbundet-unique need for large counties. §5 Fase 3 explicitly places 'Geografisk kartvisning (Blindeforbundet)' in Growth & Engagement phase.
-
docs/source/likeperson.md · line 61Geografisk kartvisning av likepersoner for matching og oppdragstildeling (særlig store fylker).
-
docs/source/likeperson.md · line 271Geografisk kartvisning (Blindeforbundet)
-
docs/source/likeperson.md · line 359geographic-map-view | Geographic Map View | Peer Mentor Map, Assignment Matching by Geography
Analysis
Geographic visualization is a Blindeforbundet-specific need driven by their operation across large counties where mentor-to-contact proximity directly affects service quality. Coordinators currently lack visual tools to assess geographic coverage, leading to suboptimal mentor dispatch and unnecessary travel costs. The map view transforms invisible distribution data into an actionable interface, enabling coordinators to make faster, better-informed dispatch decisions. This reduces travel reimbursement costs, shortens response times to contacts, and improves the overall efficiency of the peer mentor program for organizations operating at regional scale.
Implementation requires a mobile-friendly map widget (e.g. flutter_map or Google Maps SDK) with custom marker rendering for mentor locations. A dedicated Geo Service handles location data fetching, while a Map Tiles Provider infrastructure component supplies base cartography from a third-party provider. Privacy is critical: mentor location data must be encrypted at rest and only exposed to authorized coordinator roles. Location accuracy should be configurable (exact vs. approximate municipality-level) per mentor preference. Performance optimization through tile caching, marker clustering at low zoom levels, and lazy-loading of profile details on marker selection.
Quality Assurance
Coordinator (primary) · Peer Mentor (subject_view)Coordinator (Koordinator)
Quick UAT
- Logg inn i Meander-mobilappen som Koordinator og åpne fanen Arbeid.
- Velg Likepersonskart fra arbeidsmenyen og vent til kartet laster med markører for likepersoner i ditt lokallag.
- Trykk på filterikonet og huk av for 'Aktiv' status og ønsket rolletag, og bekreft at kun matchende markører vises.
- Trykk på en markør og bekreft at en profil-forhåndsvisning åpnes med navn, status og avstand.
- Zoom ut til fylkesnivå og bekreft at enkeltmarkører aggregeres til klyngetall slik at ingen eksakte adresser vises.
Quick UAT — Accessibility
-
Logg inn i Meander-mobilappen som Koordinator og åpne fanen Arbeid.
- Screen reader Skjermleser annonserer 'Arbeid, fane valgt' når fanen aktiveres.
- Keyboard / focus Bunnavigasjon er tab-baret med pil-navigasjon mellom faner.
- Focus visibility Synlig fokusring rundt den aktive bunnfanen.
- Touch target Bunnfaner er minst 24×24 CSS-piksler (mål: 44×44).
-
Velg Likepersonskart fra arbeidsmenyen og vent til kartet laster med markører for likepersoner i ditt lokallag.
- Screen reader TalkBack/VoiceOver annonserer 'Likepersonskart, lastet, N likepersoner vist'.
- Live region 'Kart lastet. {N} likepersoner i visningen.' annonseres høflig.
- Zoom Kartlerret og kontroller forblir brukbare ved 200 % zoom uten horisontal scroll utenfor kartet.
-
Trykk på filterikonet og huk av for 'Aktiv' status og ønsket rolletag, og bekreft at kun matchende markører vises.
- Screen reader Filterknapp annonseres som 'Filtre, knapp'; avkrysningsbokser annonserer label + tilstand.
- Keyboard / focus Filtre kan åpnes og krysses av med tastatur alene; Escape lukker panelet.
- Focus visibility Fokus flyttes til første avkrysningsboks når filterpanelet åpnes.
- Touch target Hver avkrysning er minst 24×24 CSS-piksler.
- Live region 'Filter oppdatert. {N} likepersoner vises.' annonseres høflig.
-
Trykk på en markør og bekreft at en profil-forhåndsvisning åpnes med navn, status og avstand.
- Screen reader Markør har tilgjengelig navn som inkluderer likepersonens navn og status; forhåndsvisning annonseres når den åpnes.
- Keyboard / focus Markører kan nås via en alternativ liste-visning når dra/touch ikke er mulig.
- Focus visibility Fokus flyttes inn i forhåndsvisningskortet ved åpning og returneres til markøren ved lukking.
- Contrast Status (aktiv/pause) formidles med både ikon og tekst, ikke bare farge; tekst minst 4.5:1.
-
Zoom ut til fylkesnivå og bekreft at enkeltmarkører aggregeres til klyngetall slik at ingen eksakte adresser vises.
- Screen reader Klynger annonseres som 'Klynge, {N} likepersoner i området'.
- Keyboard / focus Zoom-kontroller (+/-) er tastaturtilgjengelige som knapper i tillegg til pinch-gest.
- Zoom Klyngetall og labels forblir lesbare ved 200 % systemzoom.
- Contrast Klynge-bobler har tekstkontrast minst 4.5:1 mot bobleflate.
Peer Mentor (Likeperson)
Quick UAT
- Logg inn i Meander-mobilappen som Likeperson og bekreft at Likepersonskart IKKE finnes i din arbeidsmeny.
- Be koordinatoren bekrefte at din markør synes på kartet med korrekt status (Aktiv/Pause) og rolletag.
- Sett deg på Pause via Profil → Pause, og be koordinatoren bekrefte at markøren oppdaterer status til 'Pause' ved neste lasting av kartet.
Quick UAT — Accessibility
-
Logg inn i Meander-mobilappen som Likeperson og bekreft at Likepersonskart IKKE finnes i din arbeidsmeny.
- Screen reader Skjermleser leser kun likeperson-relevante menyvalg; ingen 'Likepersonskart'-oppføring annonseres.
- Keyboard / focus Tab gjennom arbeidsmenyen stopper ikke på en kart-oppføring.
-
Be koordinatoren bekrefte at din markør synes på kartet med korrekt status (Aktiv/Pause) og rolletag.
- Screen reader Når koordinatoren leser opp markørens forhåndsvisning, må status og rolletag være lesbar tekst, ikke kun farge-ikon.
- Contrast Status angis med tekst + ikon, ikke kun farge.
-
Sett deg på Pause via Profil → Pause, og be koordinatoren bekrefte at markøren oppdaterer status til 'Pause' ved neste lasting av kartet.
- Focus visibility Etter pause-bekreftelse returneres fokus til Profil-skjermens overskrift.
- Live region 'Status oppdatert til Pause.' annonseres høflig i likepersonens app.
Role Boundaries
4 role(s) must NOT access this feature-
Peer Mentor (Likeperson)
Likepersonskart finnes ikke i likepersonens navigasjon; deep-link til kartruten returnerer 403 og redirigerer til Hjem.
-
Organization Administrator
Org Admin har ingen mobil-spesifikk admin-visning av kartet; på mobil opptrer Org Admin som Coordinator og ser samme kart som koordinatorer - ingen admin-only overstyringer eksponeres.
-
Global Administrator
Global Admin har ingen standardtilgang til organisasjonens kartdata; kartet er kun tilgjengelig under tidsbegrenset support-flagg satt av organisasjonen, og hver tilgang logges i audit-loggen.
-
Prospective Buyer
Salgsnettstedet eksponerer ingen kartdata; ingen autentiserte ruter finnes, og deep-link til mobilappens kart fra salgsnettstedet er umulig.
Expected End State
-
Coordinator (Koordinator)
Koordinatoren ser et filtrerbart kart med likepersoner i sitt lokallag, kan åpne profil-forhåndsvisninger per markør, og enkeltadresser er skjult bak klyngeaggregering på lave zoomnivåer.
-
Peer Mentor (Likeperson)
Likepersonen har ingen kart-inngang i sin app, men deres status (Aktiv/Pause) og rolletag reflekteres korrekt i koordinatorens kartvisning.
Components (7)
Shared Components
These components are reused across multiple features
User Stories
No user stories have been generated for this feature yet.