plyxui is an open source component library that ships to three platforms from one codebase: Web, React Native, and VS Code extensions. Same primitives, same props, adapters underneath. Per-package install so you pull only what you need. Agent-aware, so AI coders scaffold the same primitives a human would.
Fin Startups get Fin free for a year + 93% off Intercom
Promoted
Maker
📌
Hey Product Hunt
I built plyxui because I got tired of rewriting the same
Button, Input, Stack, Text, Modal every time I started a new
project. Especially when the same team wanted a web app AND a
React Native app AND a VS Code extension: the primitive
mismatch triples across those targets.
plyxui ships one primitive surface (Box, Input, Button, Stack,
Text, plus composites) with three rendering adapters
underneath. Same names, same props. What differs is what
they render into: a DOM button on web, a Pressable on native,
the VS Code extension host's own tokens for extensions.
Two things I want to call out beyond the cross-platform story:
1. Per-package install. You pull only what you need :
@plyxui/primitives, @plyxui/comps, @plyxui/layouts,
@plyxui/hooks, and so on. No 400kb "just install
everything" bundle.
2. First-party MCP server. If you code with Claude, Cursor,
Copilot, or any agent that speaks MCP, plyxui exposes its
components as tools the agent can call by name. The AI
scaffolds screens using the actual library primitives, not
its best guess at what "a modal" means.
Everything is MIT licensed. The playground on plyxui.com is
the real npm package running in your browser : fork it,
break it, PR it.
If this resonates, I would love your support today. Comments
matter more than upvotes: the API surprised you? The docs
missed something? A component you always wished existed?
Drop it below. I am reading every one live.
Thanks especially to the folks who tested early builds and
told me what was wrong before it was public. You know who
you are.