mitosis
Mitosis is a compiler that lets you author UI components once in a JSX-like syntax and transpile them into idiomatic code for many frameworks — React, Vue, Angular, Svelte, Solid, Qwik, web components and more. It's the open-source engine behind Builder.io's cross-framework component delivery.
MITPermissive — free to use in commercial and proprietary software, with attribution.View license →
Production readiness
4/5- Actively maintainedCommits in the last 6 months
- No known vulnerabilitiesNot yet scanned
- Clear, usable licenseMIT (permissive)
- Proven adoptionWidely used
- Has documentationDocumentation indexed
npm install mitosisOur analysis
A write-once, compile-to-anything tool for UI components. You write components in a constrained subset of JSX (Mitosis JSX), and the compiler emits native source for React, Vue, Angular, Svelte, Solid, Qwik, React Native, web components, and others.
When to use mitosis
Use it when you need to ship the same design-system or component library across multiple frameworks without maintaining parallel implementations, or when building component-export tooling like Builder.io's visual editor. It's especially valuable for library/SDK authors targeting framework-agnostic distribution.
When not to
Avoid it for single-framework applications — the abstraction tax and constrained authoring syntax aren't worth it when you only target React (or one framework). It's also a poor fit for complex app logic; it's designed for presentational/component-level code, not whole applications.
Strengths
- Genuinely broad output target support across the major frameworks
- Avoids duplicate maintenance of multi-framework component libraries
- Backed by Builder.io and used in their production product
- Static analysis lets it generate idiomatic, readable framework code rather than a runtime wrapper
Trade-offs
- Authoring requires a restricted JSX dialect with non-obvious rules, creating a learning curve
- Generated code quality and fidelity vary by target framework
- Debugging spans your source plus generated output, complicating the workflow
- Edge cases in complex components often need manual escape hatches or per-target tweaks
Maturity
Mature and actively developed with a large following (~14k stars) and real production backing from Builder.io. The ecosystem is niche, however, and docs have migrated to a separate site; teams should expect to engage with the community for less common output targets.
Docs have moved to mitosis.builder.io