a2ui-project / a2ui-project/a2ui

Renderers: consider wrapping one source of truth?

Open
#404 2 comments 2 reactions 0 assignees View on GitHub
P2 status: first-line-handled status: needs review type: feature/enhancement
Dominant language
TypeScript
Stars
16.4k
Forks
1.3k
Avg merge
2d 13h
Merged PRs (30d)
134

Description

There are already multiple issues and PRs open with people trying to contribute various attempts at Vue, react, etc.

Meanwhile, the repo already has angular and lit renderers.

If you start accepting these contributions, you'll basically end up with a component catalog ported to each known framework over time.

This seems like a pain to maintain since they're all going to provide the same functionality but through duplicated code tailored for each framework.

Have you considered just wrapping one source of truth in thin components for each of the frameworks?

Under the hood, this is the same as any other component catalog. You could store your source components as custom elements (lit), but provide react/vue/etc wrappers which render those CEs.

This way you maintain one copy of the component logic and various thin wrappers for sake of giving better DX to those using other rendering libraries.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.