Skip to content

Introduction

cross-framework is a source-to-source compiler focused on turning React function components (JSX / TSX) into Vue 3 single-file components with <script setup lang="ts"> and a <template>.

Live playground: cross-framework.netlify.app · Documentation: cross-framework-doc.netlify.app

Goals

  • Give teams a structured migration path: parse to an intermediate representation (IR), then print idiomatic Vue instead of regex rewrites.
  • Support developer workflows: CLI for files on disk, programmatic API for tools and the bundled playground, tests with fixtures.

Non-goals (today)

  • Not a general “any framework ↔ any framework” compiler yet—only React → Vue is wired. Svelte, Solid, Qwik, Vue-as-input, and additional emit targets belong on the roadmap.
  • Not automatic import rewriting between React and Vue ecosystems (see limitations).
  • Not a guarantee that output is drop-in production-ready for every pattern; edge cases may need manual follow-up.

Who this is for

  • Teams exploring a React → Vue move without committing to a full rewrite upfront.
  • Educators comparing framework models side by side.
  • Contributors extending the parser, IR, or codegen.

Contact

Reach maintainers at parsajiravand@gmail.com (issues, ideas, or to ask about joining the team). More channels may be added later — see Contact.

Next: Getting started.

Questions? parsajiravand@gmail.com · MIT License · BRANDING.md for name / fork policy · https://cross-framework.netlify.app/ · https://cross-framework-doc.netlify.app/