Zum Inhalt springen
99ersstudio
Alle Arbeiten
Mobile Apps/Store-Freigabe ausstehend

Verein App

Offline-first DSGVO-konformer Vereinsmanager: Mitglieder, Beiträge, Veranstaltungen, Dokumente, Ankündigungen. Kostenlos bis 25 aktive Mitglieder.

46
Tests
6a
Phasen
25 mbr
kostenlos bis

Das Problem

Ein 30-köpfiger Schützenverein oder Kleingartenverein braucht kein SaaS-Abo, kein sechsstelliges ERP und keinen steuerberater-tauglichen Prüfpfad. Was er braucht: ein handygerechtes Tool, das die Mitgliederliste führt, nachverfolgt wer den Jahresbeitrag bezahlt hat, die Jahreshauptversammlung plant und auf Anfrage des Kassenwarts eine CSV-Datei exportiert – alles auf Deutsch, alles DSGVO-konform und möglichst ohne Backend, das Daten leaken kann. Das kostenlose Kontingent jeder kommerziellen Alternative ist entweder stark eingeschränkt oder entfällt sobald der Verein eine bestimmte Mitgliederzahl überschreitet.

Wie wir es gebaut haben

  1. 01Alle Funktionen Offline-first gegen SharedPreferences-JSON-Repositories gebaut – MemberRepository, FeeRepository, PaymentRepository, EventRepository, AnnouncementRepository, DocumentRepository – damit die gesamte CRUD-Oberfläche auch im Flugzeug ohne Signal funktioniert.
  2. 02Beiträge korrekt modelliert: MembershipFee plus separates Payment mit vier Statuswerten (offen, bezahlt, ueberfaellig, erlassen) und einer PaymentStatusEngine, die den effectiveStatus aus Fälligkeitsdatum vs. heute ableitet – die UI muss nie fragen, welcher Status angezeigt werden soll.
  3. 03Wiederkehrende Veranstaltungen (wöchentlich / zweiwöchentlich / monatlich mit Monatsend-Klammerung) plus EventDetailScreen mit Mitglieder-RSVP per SegmentedButton. RSVP-Zählungen fließen ins Dashboard und den Tab für bevorstehende Veranstaltungen ein.
  4. 04DE-formatierten CSV-Export geliefert – Semikolon-getrennt, Komma als Dezimalzeichen, korrekte Maskierung – für Mitglieder und jahresgefilterte Zahlungen, übergeben ans System-Share-Sheet per share_plus. Der Kassenwart fügt das Ergebnis direkt in Excel ein.
  5. 05Free-Tier-Schranke eingebaut (PremiumController + freeTierExceededProvider), die die kostenlose Nutzung auf 25 aktive Mitglieder begrenzt, mit Upgrade-Bannern auf Dashboard und Einstellungen. Der Premium-Schalter wird lokal gespeichert; die eigentliche Paywall (RevenueCat) und der Cloud-Sync-Pfad (Supabase) warten auf Zugangsdaten.

Ergebnis

Phasen 1–5 sowie 6a abgeschlossen – Offline-feature-complete. 46 von 46 Tests bestanden, flutter analyze fehlerfrei. Die UI ist ausschließlich auf Deutsch, enthält einen Haftungsausschluss in den Einstellungen und führt keinen einzigen Netzwerkaufruf aus. Sechs Routen, drei Zielgruppen für Ankündigungen, sechs Dokumentkategorien und ein Dashboard mit Live-Zählerstand.

Stack

FlutterDartRiverpodGoRoutershare_plus

Flutter / Dart · Riverpod für State-Management · GoRouter für Navigation · SharedPreferences-JSON-Repositories · Material 3 mit grünem Seed (Hell + Dunkel) · share_plus für CSV- und Share-Sheet-Übergabe · kein Backend bis Phase 6b.

Als Nächstes

Phase 5b: echter Datei-Upload per file_picker + Storage-Berechtigungen. Phase 6b: optionaler Supabase-Auth- / Datenbank- / Storage-Sync (wartet auf Zugangsdaten). RevenueCat für die Live-Paywall, sobald ein Verein zusagt.

Weitere Referenzen