v0.1.1
We are excited to announce the first public release of Pulse, a semantic reactivity system for modern applications. This release establishes the core primitives and ecosystem under the new @pulse-js namespace.
Packages
Section titled “Packages”@pulse-js/core: The reactivity engine.@pulse-js/react: React 18+ integration hooks.@pulse-js/tools: Visual debugging suite (formerly devtools).
Features
Section titled “Features”Core Reactivity
Section titled “Core Reactivity”- Sources: Primitive containers for state values.
- Guards: First-class “Conditions” that track status (
ok,fail,pending) and failure reasons. - Composition: Logic helpers
guard.all,guard.any,guard.not, andguard.compute. - Async Support: Native Promise handling for async guards.
- SSR: Isomorphic
evaluate(server) andhydrate(client) methods.
React Integration
Section titled “React Integration”usePulseHook: Universal hook for both Sources and Guards.- Concurrent Mode: Built on
useSyncExternalStorefor safe concurrent updates. - Smart Re-renders: Components only update when semantic state changes.
Developer Experience
Section titled “Developer Experience”- Pulse Tools: A zero-config, draggable overlay for inspecting the reactive graph.
- Type Safety: Full TypeScript support with inferred types.
Getting Started
Section titled “Getting Started”npm install @pulse-js/core @pulse-js/react @pulse-js/tools