Riposte
v0.3.2

A React-inspired frontend library for Scala.js.

Build user interfaces with function components, hooks, and a typed DSL — the React model, idiomatic Scala. An immutable VNode tree describes your UI; a reconciler diffs each new tree against the live DOM and mutates only what changed.

Why Riposte

Riposte is a frontend library for building user interfaces in Scala.js, inspired by React. Components are functions, state lives in hooks, and the UI is an immutable tree projected onto the DOM. The name is a fencing term — the counter-thrust after a parry. Diffing is the parry; patching the DOM is the riposte.

val Counter = view {
  val (count, _, update) = useState(0)
  button(onClick := (_ => update(_ + 1)), s"Count: $count")
}

What’s here

The sections split the docs into the usual layers: get up and running fast, understand the model — components, hooks, shared state, routing, data fetching, and forms — then look up the exact API surface when you need it.

  • Getting Started — install Riposte and mount your first component.
  • Guide — the DSL, hooks, shared state with atoms, the router, queries, and forms.
  • Component library (salle) — styled, skinnable widgets: form controls, display, overlays, and layout, with light/dark theming.
  • Reference — the published modules and their APIs.

Search

Esc
to navigate to open Esc to close