pyreon

Pyreon is a signal-based UI framework that renders directly to the DOM without a virtual DOM. It provides fine-grained reactivity, streaming SSR, a JSX compiler, and compatibility layers for React, Vue, Solid, and Preact.

Core Framework

The foundation — reactivity engine, component model, renderers, router, and build tooling.

PackageDescription
@pyreon/reactivitySignals, computed values, effects, stores, and resources
@pyreon/coreComponent model, JSX runtime, lifecycle hooks, control flow
@pyreon/compilerJSX compiler with reactivity wrapping and static hoisting
@pyreon/runtime-domDOM renderer — mount, hydrate, transitions, keep-alive
@pyreon/runtime-serverSSR/SSG with streaming Suspense and store isolation
@pyreon/routerType-safe routing with nested routes, guards, and loaders
@pyreon/headReactive document head management with SSR support
@pyreon/serverSSR handler, SSG, island architecture, and middleware
@pyreon/vite-pluginVite integration with JSX transform and HMR
@pyreon/typescriptShared TypeScript configuration presets
@pyreon/cliCLI tools — doctor, generate, and context commands
@pyreon/mcpMCP server for AI-assisted development

Compatibility Layers

Use the API you already know, powered by Pyreon's signal engine.

PackageDescription
@pyreon/react-compatReact hooks API — useState, useEffect, useMemo, etc.
@pyreon/preact-compatPreact API — h(), Component class, signals integration
@pyreon/solid-compatSolidJS API — createSignal, createEffect, control flow
@pyreon/vue-compatVue 3 Composition API — ref, computed, reactive, watch
FeatureReactPreactSolidVue
Signals / reactive state
Computed / derived values
Effects / watchers
Lifecycle hooks
Control flow components~~~
Component model
Context / provide-inject
Store / state management~~

State & Data

Signal-native state management, forms, i18n, and data fetching.

PackageDescription
@pyreon/storePinia-inspired composition stores with SSR isolation
@pyreon/state-treeStructured state tree with snapshots, patches, and middleware
@pyreon/formSignal-based form management with field arrays
@pyreon/validationSchema validation adapters for Zod, Valibot, and ArkType
@pyreon/i18nReactive i18n with async namespace loading
@pyreon/queryTanStack Query adapter with Suspense and SSR dehydration
@pyreon/tableTanStack Table adapter for reactive table state
@pyreon/virtualTanStack Virtual adapter for virtual scrolling
@pyreon/machineReactive state machines with type-safe transitions
@pyreon/storageReactive client-side storage — localStorage, sessionStorage, cookies, IndexedDB
@pyreon/permissionsType-safe reactive permissions — RBAC, ABAC, feature flags
@pyreon/hotkeysKeyboard shortcut management with scopes and modifiers

Meta-Framework

Zero-config full-stack framework and developer tooling.

PackageDescription
@pyreon/zeroFull-stack meta-framework — file routing, SSR/SSG/ISR, optimized components
@pyreon/create-zeroProject scaffolding for new Zero applications
@pyreon/metaBarrel package re-exporting the full fundamentals ecosystem
@pyreon/storybookStorybook renderer for developing and documenting Pyreon components

UI System

Styling, theming, components, hooks, and animations.

PackageDescription
@pyreon/ui-coreCore initialization, CSS engine connector, and shared utilities
@pyreon/stylerCSS-in-JS engine with theme support
@pyreon/unistyleResponsive breakpoints and media query utilities
@pyreon/hooks35 signal-based hooks for common UI patterns
@pyreon/elementsFoundational components — Element, List, Overlay, Portal, Text
@pyreon/attrsChainable component factory for composing default props
@pyreon/rocketstyleMulti-dimensional style composition — themes, sizes, variants
@pyreon/coolgridResponsive grid system with Container, Row, Col
@pyreon/kineticCSS-transition animation components — Transition, Stagger, Collapse
@pyreon/kinetic-presets120+ animation presets and composition utilities
@pyreon/connector-documentBridge between styled components and @pyreon/document
@pyreon/document-primitivesRocketstyle document components for multi-format export

Ecosystem

Specialized packages for rich application features.

PackageDescription
@pyreon/documentUniversal document rendering — one template, 14+ output formats
@pyreon/chartsReactive ECharts bridge with lazy loading
@pyreon/codeReactive CodeMirror 6 code editor with signals
@pyreon/flowReactive flow diagrams with signal-native nodes and auto-layout
@pyreon/featureSchema-driven CRUD primitives with auto-generated hooks

Developer Tools

PackageDescription
@pyreon/devtoolsChrome DevTools extension for component tree and signal inspection

Quick Start

Install the core packages:

npm install @pyreon/core @pyreon/reactivity @pyreon/runtime-dom @pyreon/vite-plugin
bun add @pyreon/core @pyreon/reactivity @pyreon/runtime-dom @pyreon/vite-plugin
pnpm add @pyreon/core @pyreon/reactivity @pyreon/runtime-dom @pyreon/vite-plugin
yarn add @pyreon/core @pyreon/reactivity @pyreon/runtime-dom @pyreon/vite-plugin

Create a component:

// @check
import { signal, computed } from '@pyreon/reactivity'
import { Show } from '@pyreon/core'
import { mount } from '@pyreon/runtime-dom'

const count = signal(0)
const doubled = computed(() => count() * 2)

const App = () => (
  <div>
    <button onClick={() => count.set(count() + 1)}>
      Count: {count()} (doubled: {doubled()})
    </button>
    <Show when={() => count() > 5}>
      <p>Count is greater than 5!</p>
    </Show>
  </div>
)

mount(App, document.getElementById('app')!)