// write typescript, render native

Solid's reactivity.
Flutter's engine.

FUSEApp.tsx14 ln
import { createSignal } from "solid-js";

export default function App() {
  const [count, setCount] = createSignal(0);

  return (
    <view flex={{ align: "center", justify: "center", expand: true }}>
      <text fontSize={48} fontWeight="bold">
        {count()}
      </text>
      <gestureDetector onTap={() => setCount(c => c + 1)} />
    </view>
  );
}
DARTmain.dart14 ln
import 'package:flutter/material.dart';
import 'package:solid_fuse/solid_fuse.dart';
import '_generated/fuse_packages.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();

  final runtime = await FuseRuntime.create();
  registerFusePackages(runtime);

  runApp(MaterialApp(
    home: FuseView(runtime: runtime),
  ));
}

Fuse is a framework for building native apps with SolidJS and Flutter. Reactive signals drive real widgets through an embedded JS engine. No webview, no bridge serialization, no compromise. Write TSX, render with Impeller, ship to all platforms.

01 — features

Why Solid Fuse

The best parts of two ecosystems, connected at the rendering layer.

01

Fine-grained reactivity

Signals propagate directly to widgets. No VDOM, no diffing, no reconciler.

02

Native rendering

Flutter's Impeller engine. 120fps, pixel-perfect on iOS and Android.

03

One ecosystem

npm packages with auto Dart codegen. One package manager, both worlds.

02 — architecture

From signal to pixel

TypeScript runs in QuickJS, embedded via FFI. Signals flow directly to native widgets.

SolidJS
your code
QuickJS
runtime
Rust FFI
bridge
Flutter
widgets
Impeller
pixels
03 — for who

Two worlds, one framework

TYPESCRIPT

Your stack, on mobile.

//TSX components with SolidJS signals
//npm packages and existing tooling
//Hot reload in milliseconds
//No Dart knowledge required
//OTA updates without App Store
FLUTTER

A better authoring layer.

//Same rendering engine underneath
//Register widgets in 3 lines of Dart
//Drop into native code anytime
//Existing knowledge transfers
//Publish extensions to npm
04 — comparison

How it stacks up

solid-fusereact nativefluttercapacitor
languageTypeScriptJS / TSDartJS / TS
renderingFlutter (Impeller)native viewsFlutter (Impeller)webview
reactivitysignalsVDOM diffsetStateVDOM diff
ota updatesbuilt-incodepush--native
npmnativenativenative
pixel-perfect

Start building.

Zero to running app in under a minute.

$bunx create-solid-fuse my-app