ripple-ts/ripple

the elegant TypeScript UI framework

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 46 minutes ago
Added to GitGenius on September 8th, 2026
Created on February 16th, 2025
Open Issues & Pull Requests: 7 (+0)
GitHub issues: Enabled
Number of forks: 292
Total Stargazers: 7,387 (+0)
Total Subscribers: 28 (+0)

Repository Insights (GitGenius)

Most active contributors

Sign in to see contributor activity.

Related repositories by overlapping contributors

No overlapping-contributor repos identified yet.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Issue API getrepoissuespagesummary failed: 429 Rate limit exceeded. Please try again later.

Detailed Description

Ripple is a TypeScript-first UI framework built around .tsrx files, fine-grained reactivity, scoped styles, and a small runtime.

Ripple addresses the challenge of building reactive UIs with tight TypeScript integration by combining JSX-like authoring with template-native control flow. The framework uses .tsrx files as its core format, enabling developers to colocate TypeScript setup logic directly with UI markup through JSX statement containers. Reactivity is achieved through a track() function and lazy destructuring, allowing reads of lazy bindings to remain reactive. The framework provides reactive collection types including RippleArray, RippleObject, RippleMap, and RippleSet, and includes template-native directives for @if, @for, @switch, and @try control flow. Scoped style blocks with automatic class hashing keep styling encapsulated, and the runtime is designed to be small.

Ripple suits teams prioritizing TypeScript developer experience and fine-grained reactivity over framework size. It works well for projects where collocating setup logic with templates reduces cognitive overhead. The framework supports Vite, includes editor tooling, Prettier and ESLint integration, and handles both buffered and streaming server-side rendering with hydration. The .tsrx format is also a standalone language that can target React, Preact, Solid, Vue, and Ripple, though Ripple is the runtime-focused target with track(), reactive collections, server modules, hydration, and DOM helpers built in.

The project shows active development with regular commits and ongoing refinement of core features. The codebase maintains comprehensive documentation and provides a playground for experimentation. The framework benefits from leadership by a developer with substantial prior experience across multiple UI frameworks and reactive systems.