Reverse It
Een mobiele Flutter-game waarin spelers omgekeerde audiofragmenten moeten herkennen en punten scoren door juiste antwoorden te geven.
Gebruikte technologieën
- Flutter
- Dart
- flutter_bloc (Bloc pattern)
- audioplayers
- just_audio
- ffmpeg_kit_flutter_new
- record
- speech_to_text
- formz
- flow_builder
- firebase_auth
- firebase_messaging
- firebase_core
- permission_handler
- path_provider
Architectuur
Reverse It gebruikt het Bloc pattern voor state management en een services-based architectuur. Audio playback & reverse processing verloopt via just_audio, audioplayers en FFmpeg Kit. Firebase wordt gebruikt voor authenticatie, pushmeldingen en appconfiguratie. Navigatie verloopt via Flow Builder.
Huidige versie
0.0.2
- Flutter
- Dart
- flutter_bloc (Bloc pattern)
- audioplayers
- just_audio
- ffmpeg_kit_flutter_new
- record
- speech_to_text
- formz
- flow_builder
- firebase_auth
- firebase_messaging
- firebase_core
- permission_handler
- path_provider
- 0.0.2 – 2025-10-01
Live early release met reverse playback, audio-opname, eerste UI-flow, validatie met Formz, scoretracking en Firebase-integratie.
Details
Over Reverse It
Reverse It is een mobiele game waarin spelers een kort audiofragment in omgekeerde volgorde horen en moeten raden wat het originele woord is. Na elk antwoord krijgt de speler directe feedback en na meerdere rondes volgt een compleet scoreoverzicht.
Belangrijkste Features
- Audiofragmenten achterstevoren afspelen (FFmpeg + just_audio)
- Opnemen van eigen audiofragmenten om te reverseën
- Invoer en validatie van gebruikersantwoorden via Formz
- Scoretracking per ronde + eindscherm met resultaatoverzicht
- Haptische feedback en animaties in de UI
- Volgende-vraag en herstartfunctionaliteit
- Firebase-authenticatie (e-mail, Google, Apple)
- Pushmeldingen via Firebase Messaging
- App flow management met Flow Builder
- Volledige lokalisatie (intl + ARB-bestanden)
- Native Splash Screen integratie
Projectstructuur
De projectstructuur toont een duidelijke scheiding tussen UI, services en logica.
lib/ ├── screens/ (home, game, result, end, login) ├── services/ │ ├── audio_service.dart │ ├── audio_reverse_service.dart │ ├── game_logic_service.dart │ ├── recorder_service.dart │ ├── vibration_service.dart │ ├── auth_service.dart │ └── firebase_messaging_service.dart ├── l10n/ (lokalisatie) └── main.dart
Firebase Integratie
Reverse It gebruikt Firebase Core, Auth en Messaging. Authenticatie en notificatielogica zijn volledig ondergebracht in eigen services.)
Lokalisatie
De app ondersteunt meerdere talen via intl en flutter_localizations. ARB-bestanden worden automatisch gegenereerd.
Theme
Reverse It gebruikt een modern dark-neon thema.
- Background: #0A0E21
- Cyan Neon Accent: #00FFC6
- Card: #1A1D2F
- Input Fill: #1D1F33
- Font Family: Orbitron
State Management
Alle logica draait op flutter_bloc (Bloc pattern), inclusief audio-events, gameflow, UI-state en validatie.
Toekomstige uitbreidingen
- Meer woorden & levels
- Multiplayer modus
- Moeilijkheidsgraden
- Cloudopslag van scores