a2ui-project / a2ui-project/a2ui
Support "portable A2UI web Components" which can be installed in a Catalog for *any* framework adapter
- Langage dominant
- TypeScript
- Étoiles
- 16.4k
- Forks
- 1.3k
- Merge moyen
- 2 j 13 h
- PR mergées (30 j)
- 134
Description
On the web, we have adapters for many different frameworks, that allow Angular developers to define components in an Angular-specific way, and React developers to define components in a React-specific way. This is great for the use case where a developer needs to implement a component for one specific framework, because they can do so in a familiar, ergonomic way.
But, there is also a use case where you want to define a component that can be used with any web framework via any framework adapter. This is especially true of shared components which some providers may vend. E.g. MySocialMedia company might implement a MySocialMediaPost Component library which can be used to display a specific post. Then different application developers might install the my_social_media_a2ui library from NPM and add that component to their catalog. In this case, we want to make it so that MySocialMedia does not need to implement 5 different versions of their component for different frameworks, but just implement it once in a low-dependencies way, and have it useable everywhere.
Also, developers of new A2UI framework adapters (e.g. for other frameworks like Svelte, Vue etc) should be able to implement support for this type of component cheaply, and give developers access to the ecosystem of Components.
Also see https://github.com/google/A2UI/issues/931 which describes this pattern specifically as a way to centralize the basic catalog implementation.
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Review the existing framework adapters (Angular, React) to understand the adapter pattern. Examine issue #931 for context on centralizing catalog implementation. The work involves designing a low-dependency component definition system that can be consumed by any adapter. Start by exploring the core catalog and adapter interfaces to identify extension points.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- typescript
- Domaine
- frontend, tooling
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- Calme
- Clarté
- Plutôt claire
- Accessibilité débutants
- 25/100