v0.1.0 ยท PAN v1 Compliant

Build Loosely-Coupled
Web UIs

A lightweight DOM-native message bus for framework-agnostic components.
Zero build. Zero dependencies. Just pure web standards.

View Examples Demo Apps Read Docs

Why LARC?

โšก

Zero Build Required

Drop a script tag and start building. Works from file://, no webpack, no bundlers, no configuration.

๐ŸŽฏ

Framework Agnostic

Works seamlessly with React, Vue, Lit, Svelte, or vanilla JS. Mix and match frameworks in the same page.

๐Ÿ”Œ

Loose Coupling

Components communicate via topics, not imports. Build truly independent, composable UI components.

๐Ÿชถ

Lightweight

Core library is under 200 lines. All 21 components together are just 128KB. Zero runtime dependencies.

๐Ÿ”

DevTools Included

Built-in Inspector component lets you watch message flow, filter topics, and debug in real-time.

๐ŸŒ

Rich Ecosystem

REST, GraphQL, PHP connectors. Web Worker support. SSE bridges. Schema-driven forms. CRUD components.

๐Ÿ”

Built-in Authentication

JWT authentication with auto-header injection. Developers never write Authorization headers. Auto-refresh tokens. Works everywhere.

๐Ÿงช

Zero-Build Testing

Custom lightweight test runner. CLI and browser-based testing. No TypeScript, no build step. Pure JavaScript tests.

Get Started in 10 Seconds

Copy this into an HTML file and open it. That's it.

<!doctype html>
<!-- Drop one script tag, then use any component. That's it! -->
<script type="module" src="https://chrisrobison.github.io/pan/src/components/pan-autoload.mjs"></script>

<!-- Components load automatically (including pan-bus!) -->
<x-counter></x-counter>
<pan-inspector></pan-inspector>

โœจ All components load automatically when they appear in the DOM. The <pan-bus> is automatically created for you. No imports, no customElements.define(), no bundler.

Perfect For

Micro-Frontends

Build independent teams' components that communicate without tight coupling.

Component Libraries

Create reusable UI components that work in any framework or vanilla JS.

Progressive Enhancement

Layer interactive features onto existing pages without heavy frameworks.

Rapid Prototyping

Build and iterate quickly without build tooling or configuration overhead.

Framework Migration

Gradually migrate between frameworks while maintaining interoperability.

Educational Projects

Teach modern web patterns without the complexity of build systems.

Ready to Build?

Explore 18+ progressive examples and 5 production-ready demo applications

Browse Examples Try Demo Apps Read the Docs View on GitHub