About PawaJS

A lightweight reactive runtime designed for fine-grained reactivity, minimal overhead, and maximum control.

What is PawaJS?

PawaJS is a small, dependency-free reactive JavaScript runtime focused on continuity and dom update — the ability to update the DOM precisely when data changes, without re-rendering entire component trees.

At just around 15–18 kB, it delivers a modern component model, fine-grained reactivity, progressive enhancement, and first-class support for custom elements, while remaining simple enough to drop into any project via CDN or npm.

Philosophy

Continuity over Re-renders

Most frameworks re-render components. PawaJS tracks reactive dependencies at a fine-grained level so only the exact parts of the DOM that need to change are updated.

Getters as the Contract

Props are passed as getter functions. This simple idea gives child components direct access to the latest value without forcing the parent to re-render.

Web Standards First

Components become real custom elements. Attribute fallthrough, native events, and the platform’s component model are embraced instead of replaced.

Minimal by Design

No virtual DOM tax. No heavy runtime. Just the primitives you need to build reactive interfaces that stay fast as they grow.

Key Features

  • Fine-grained reactivity with $state and automatic dependency tracking
  • Getter-based props for precise, efficient updates
  • True custom elements with attribute fallthrough and as-child support
  • CDN-ready — no build step required for simple projects
  • ESM-native and works seamlessly with Vite, Webpack, and modern toolchains
  • Named slots, lazy components, and context for scalable architecture

Who is PawaJS for?

PawaJS is built for developers who want reactivity without the weight of larger frameworks. It’s a strong fit when you value:

Performance-sensitive UIs

Dashboards, real-time interfaces, and complex interactive pages.

Progressive enhancement

Adding reactivity to existing HTML without rewriting everything.

Full control

Developers who prefer understanding the runtime instead of fighting it.

Lightweight stacks

Projects where bundle size and startup time actually matter.

The Ecosystem

PawaJS is the core runtime. Around it sits a growing set of tools:

SupaPawaJS
Meta-framework
A full-stack framework built on PawaJS. Includes file-based routing, server rendering, and RPC-style server actions.
HTMLAnimate
Animation component
A powerful, physics-based animation component specifically designed for the PawaJS ecosystem. HTMLAnimate allows you to create fluid transitions, complex sequences, and spring-based motions using simple props and Tailwind CSS classes, css classes or inline styles.

A different kind of reactive

PawaJS doesn’t try to be everything. It focuses on doing one thing extremely well: giving you precise, efficient reactivity with a programming model that stays close to the platform.

If that resonates with how you like to build, you’re in the right place.