Documentation
Client and API
Flutter client
Updated 2026-11-03
Flutter client
The client is a Flutter application for Android and web. It renders admin-authored screen templates and calls the versioned API.
Structure
flutter/lib/application code.flutter/test/tests, including a preview-render test for every screen key.flutter/assets/fonts and bundled design assets.
Build
cd flutter
flutter pub get
flutter analyze
flutter test
flutter build apk --debug
The API base URL is injected at build time. The client must point at your server; the admin warns on an unreachable or insecure configuration.
Screens
Every screen has a default ClientScreenCatalog template, is editable in the Screen Designer and can have a native implementation. A live preview renders the real client screen against the unsaved design.
New screens must be complete: catalog template, designer, router, Command Center entry, EN/IT keys, preview parity test, documentation and the one-way sync to the demo game.
Navigation
The five-tab shell and the Command Center provide two-tap access to any screen. Nested navigators keep the bottom bar visible across pushed screens.
API contract
The client consumes /api/v1. The OpenAPI document and the parity test are part of the build. Contract changes are versioned and documented in codebase/api/API-CONTRACT.
Localization
The client uses generated ARB files. Add EN/IT keys with every visible string and regenerate with flutter gen-l10n.