Skip to content

Mitosis

Write UI components once in a JSX-like syntax and compile them to many frameworks.

Stars
14.5k
Forks
679
Licence
MIT
Language
TypeScript
Last update
8 days ago
Type
Dev tool

What it is

Mitosis is a TypeScript-based compiler that lets you write component code once in a JSX-style syntax and output it for several frameworks, such as React, Vue, Qwik, Solid, Angular, and Svelte. Teams use it to avoid maintaining the same component separately for each framework. The README provided here is truncated, so details beyond the project description and topics are limited.

  • Write a button or form component once and output versions for React and Vue
  • Share UI components between a React app and a Svelte or Solid app
  • Generate framework-specific packages from one shared component source

Great for

  • Teams maintaining the same UI components across more than one framework
  • Library authors who want to publish components for several frameworks
  • Developers already comfortable with JSX and TypeScript
  • Projects that want to experiment with framework-agnostic component code

Not ideal for

  • Projects using a single framework with no plans to change, since the compile step adds overhead without a clear benefit
  • Beginners new to web development, who will do better learning one framework first
  • Teams needing full support for every framework feature, because compiled output may not match hand-written code exactly
Step-by-step guide: how to use MitosisInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Install with a package manager

    You'll need: Node.js

    Clone the repository

    git clone https://github.com/BuilderIO/mitosis
  2. 2

    Run it

    • Clone the repository or install the package from npm
    • Read the README for the current setup steps
    • Write a small component in Mitosis syntax
    • Run the compiler to generate output for your target framework
  3. 3

    Get the most out of it

    • Start with one target framework and add others once the first works
    • Check the project's docs at mitosis.builder.io for current guidance

Downloads

Strengths

  • Single source for components across multiple frameworks
  • Open source under the MIT license
  • Built in TypeScript with an active project history (about 14,000 GitHub stars)

Trade-offs

  • README was truncated, so the full feature list and limits could not be verified here
  • Output quality and framework feature coverage may vary by target
  • Adds a build step and a new syntax to learn on top of your framework

How it compares

ProjectStarsTypeLevelUpdatedBest for
mitosis (this)14.5kDev toolintermediate8 days agoTeams maintaining the same UI components across more than one framework
svelte88.5kLibraryintermediate4 days agoDevelopers who want to build interactive websites with less boilerplate
vue212kLibraryintermediate2.1 years agoMaintaining an existing Vue 2 application that cannot yet be upgraded
solid36.2kLibraryintermediate4 days agoDevelopers who want fine-grained control over what re-renders in a web UI
storybook91.4kDev toolintermediate4 days agoFrontend teams building a shared component library or design system
prettier52.4kDev toolbeginner4 days agoTeams that want one shared code style without writing their own rules

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.