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.

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.

Next steps