# hotwired/stimulus

A modest JavaScript framework for the HTML you already have

Repository: https://github.com/hotwired/stimulus
Canonical: https://ross.abutalabs.com/products/stimulus
Homepage: https://stimulus.hotwired.dev/
Language: TypeScript
License: MIT
License Family: permissive
Last push: 2026-08-12T01:07:07+00:00

## Health v2 (maintenance only)
Score: 66/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 97, release rhythm 8, longevity 100
- inputs: {"age_days": 3547, "days_push": 22, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 13083, forks 443 (observed 2026-08-28T04:11:01.998721+00:00)

## What it is
Stimulus is a modest JavaScript framework that augments server-rendered HTML with interactive behavior using data-controller, data-target, and data-action attributes. It pairs with Turbo as part of the Hotwire stack, managing controller lifecycles as the DOM changes without taking over rendering.

## Use cases
- add interactivity to server-rendered HTML without a SPA framework
- build a Hotwire app with Rails and Turbo
- sprinkle JavaScript behavior onto existing HTML pages
- wire up DOM controllers with data attributes
- avoid heavy client-side rendering in a web app
- handle Ajax-updated DOM elements with automatic lifecycle management

## When to choose
- you have server-rendered HTML and want lightweight interactivity
- you use Rails or another backend with Turbo
- you want to avoid a full SPA framework like React
- you prefer progressive enhancement over client-side rendering

## When to avoid
- you need a full client-side SPA with complex state management
- you want a framework that renders HTML from components
- you're building a highly interactive canvas or real-time graphics app

## Facets
- artifact type: framework
- maturity: stable
- function: frontend-framework, state-management, routing
- domain: web-development, frontend, developer-tools
- platform: browser, cross-platform
- tags: hotwire, turbo, progressive-enhancement, html-attributes, controllers, typescript, server-rendered-apps, nodejs

## Member repositories
- hotwired/stimulus (main) score 66

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:11:01.998721+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:13:32.795792+00:00, confidence not recorded.
  - readme: https://github.com/hotwired/stimulus (fetched 2026-08-28T04:11:01.998721+00:00, sha 3504749ef900)
  - homepage: https://stimulus.hotwired.dev/ (fetched 2026-08-29T08:09:27.378302+00:00, sha 7259a3588fe3)
  - site_page: https://stimulus.hotwired.dev/handbook/installing (fetched 2026-08-29T08:09:27.387296+00:00, sha 8bb69f320495)
- Data as of 2026-08-30T08:39:29.467469+00:00.
