a2ui-project / a2ui-project/a2ui
[FEATURE]: Add a public pure-Dart adapter for Flutter catalogs and functions
- Langage dominant
- TypeScript
- Étoiles
- 16.4k
- Forks
- 1.3k
- Merge moyen
- 2 j 13 h
- PR mergées (30 j)
- 134
Description
- [x] I have searched the existing issues to make sure this feature has not already been requested.
## Is your feature request related to a problem? Please describe.
Flutter applications define catalogs/functions through Flutter GenUI APIs, while pure-Dart tooling uses a2ui_core types. No supported adapter proves which Flutter behavior is representable headlessly. Copying JSON Schema alone misses references, structural slots, bindings, validation, functions, and renderer fallbacks.
## Describe the Proposed Solution
Provide a public pure-Dart adaptation API that consumes serializable/public Flutter catalog definitions and produces a resolved a2ui_core catalog, explicit unsupported-schema or unresolved-$ref diagnostics, structural/dynamic/action metadata, a registry of caller-supplied pure deterministic function stubs, and a compatibility report distinguishing adapted, custom-driver-required, and unsupported components. Fail closed; do not serialize widget builders or arbitrary closures.
## Describe Alternatives Considered
Manual redeclaration drifts from the catalog shown to the agent. Flutter widget reflection is not portable. Treating schema conversion as behavior parity is unsafe.
## Additional Context
#1528 provides schema-driven binding/reference-resolution groundwork and #1282 provides relevant Node Layer work. This request focuses on the public Dart/Flutter adaptation boundary.
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Review issues #1528 and #1282 for groundwork on schema binding and Node Layer. Examine the Flutter GenUI APIs and a2ui_core types to understand the adaptation boundary. The goal is to create a public Dart API that converts Flutter catalog definitions into resolved a2ui_core catalogs with diagnostics and compatibility reports. Start by exploring existing serialization and reference-resolution code.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- dart, flutter, typescript
- Domaine
- backend-api-design, tooling
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- Active
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100