awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
hotwired avatar

hotwired/stimulus

0
View on GitHub↗
13,058 stars·438 forks·TypeScript·MIT·4 vuesstimulus.hotwired.dev↗

Stimulus

Stimulus is a JavaScript behavior framework and client-side logic layer used to add interactive behavior to server-rendered HTML. It functions as a system of DOM component controllers that organize JavaScript logic into classes, allowing developers to enhance server-delivered markup without replacing the rendering process with a client-side framework.

The framework uses data attributes to bind JavaScript classes to HTML elements and map DOM events to specific methods through document-level event delegation. It employs a lifecycle manager based on mutation observers to automatically instantiate and tear down controllers as their corresponding HTML elements enter or leave the document.

The project covers client-side component management, DOM event handling, and the mapping of element targets within a controller's scope to maintain local state.

Features

  • JavaScript Component Controllers - Provides a system of JavaScript classes that act as controllers to manage the state and behavior of HTML components.
  • Server-Rendered Enhancement - Enhances server-rendered HTML with client-side interactivity without replacing the server's rendering process.
  • Class-Based Architecture - Organizes interactive behavior into reusable JavaScript classes that maintain internal state.
  • Attribute-Driven Interactivity - Attaches JavaScript logic to existing HTML elements via data attributes to create interactive interfaces.
  • HTML Behavior Attachment - Attaches JavaScript logic to existing HTML elements to create interactive interfaces without modifying markup.
  • Instance Lifecycle Management - Manages the initialization and destruction of controllers automatically as DOM elements change.
  • Controller Binding - Links JavaScript controller classes to HTML elements using specific data attributes.
  • MutationObserver Lifecycles - Automatically instantiates and tears down controllers as elements enter or leave the document using MutationObservers.
  • Component Lifecycle Management - Manages the automatic creation and destruction of controllers as their corresponding elements change in the DOM.
  • Stateful Class Components - Uses class-based components to encapsulate local state and manage the behavior of HTML elements.
  • Attribute-Based Directives - Binds JavaScript classes to DOM elements by scanning HTML for custom data attributes.
  • Behavioral JavaScript Frameworks - Provides a framework for attaching JavaScript behavior to HTML elements via data attributes.
  • Behavioral Logic Binding - Connects JavaScript functions to HTML elements using attributes to handle user interactions.
  • DOM & Event Handling - Manages user interactions by mapping DOM events to JavaScript methods via HTML attributes.
  • Client-Side Components - Manages the lifecycle of JavaScript controllers bound to HTML elements on the client side.
  • Client-Side Logic - Provides a client-side logic layer for adding interactivity to server-rendered HTML.
  • Event Delegation - Uses document-level event delegation to trigger controller methods without per-element listeners.
  • Event Delegation Systems - Maps DOM events to controller methods via centralized event bubbling listeners.
  • Data Attribute Event Mapping - Implements document-level event delegation that maps HTML data attributes to specific controller methods.
  • Progressive Enhancement Frameworks - Adds interactive client-side behavior to server-rendered HTML without replacing the rendering process.
  • Server-Rendered Page Enhancement - Adds modest client-side interactivity to HTML delivered from a server without requiring a full SPA framework.
  • Automatic Element Mapping - Provides automatic binding of DOM elements to controller properties using data attributes.
  • Interactive Element Registries - Tracks and manages the active state of controllers as their elements enter or leave the document.
  • DOM Mutation Lifecycles - Uses MutationObservers to automatically instantiate and destroy controllers as elements enter or leave the document.
  • Automatic Element Target Mapping - Implements automatic mapping of child elements to controller targets via data attributes.
  • DOM-Driven State Management - Manages component lifecycles and state based on the presence of elements in the DOM.

Historique des stars

Graphique de l'historique des stars pour hotwired/stimulusGraphique de l'historique des stars pour hotwired/stimulus

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Stimulus

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Stimulus.
  • facebook/reactAvatar de facebook

    facebook/react

    245,669Voir sur GitHub↗

    React is a JavaScript library for building user interfaces based on a component-driven architecture and unidirectional data flow.

    JavaScriptjavascriptuifrontend
    Voir sur GitHub↗245,669
  • flightjs/flightF

    flightjs/flight

    6,493Voir sur GitHub↗

    Flight is a JavaScript component framework and DOM interactivity library used to map behavioral logic to HTML nodes. It provides an event-driven architecture for building modular user interface elements and managing web application interactivity. The library distinguishes itself through a mixin-based system for injecting reusable functions and properties into components, promoting code reuse without rigid inheritance. It further enables behavior modification via function hooking, allowing developers to wrap existing methods to inject custom logic without altering the original source code. Th

    JavaScript
    Voir sur GitHub↗6,493
  • serversideup/amplitudejsAvatar de serversideup

    serversideup/amplitudejs

    4,313Voir sur GitHub↗

    AmplitudeJS is a JavaScript library and framework for building custom HTML5 audio players. It serves as a client-side playlist manager and media controller that bridges the gap between HTML elements and the Web Audio API, allowing developers to create branded media interfaces without relying on default browser styles. The project is distinguished by its use of CSS-class-based DOM binding and data-attribute state mapping, which links HTML elements directly to playback controls and track metadata. It includes a dedicated visualization system that uses the Web Audio API to render real-time SVG w

    JavaScriptcsshtmlhtml5
    Voir sur GitHub↗4,313
  • themesberg/flowbiteAvatar de themesberg

    themesberg/flowbite

    9,283Voir sur GitHub↗

    Flowbite is a cross-framework UI library and design system built as a collection of pre-styled components and layout blocks using Tailwind CSS utility classes. It functions as a TypeScript UI toolkit and a general web framework for creating responsive websites and applications. The project provides a mirroring Figma design system to allow prototyping of components and variants before they are coded. It distinguishes itself through an AI-driven approach to page generation and the creation of design specifications via a command-line interface. The library covers a wide range of interactive int

    HTMLcomponentscssdesign-system
    Voir sur GitHub↗9,283
Voir les 30 alternatives à Stimulus→

Questions fréquentes

Que fait hotwired/stimulus ?

Stimulus is a JavaScript behavior framework and client-side logic layer used to add interactive behavior to server-rendered HTML. It functions as a system of DOM component controllers that organize JavaScript logic into classes, allowing developers to enhance server-delivered markup without replacing the rendering process with a client-side framework.

Quelles sont les fonctionnalités principales de hotwired/stimulus ?

Les fonctionnalités principales de hotwired/stimulus sont : JavaScript Component Controllers, Server-Rendered Enhancement, Class-Based Architecture, Attribute-Driven Interactivity, HTML Behavior Attachment, Instance Lifecycle Management, Controller Binding, MutationObserver Lifecycles.

Quelles sont les alternatives open-source à hotwired/stimulus ?

Les alternatives open-source à hotwired/stimulus incluent : facebook/react — React is a JavaScript library for building user interfaces based on a component-driven architecture and unidirectional… flightjs/flight — Flight is a JavaScript component framework and DOM interactivity library used to map behavioral logic to HTML nodes.… serversideup/amplitudejs — AmplitudeJS is a JavaScript library and framework for building custom HTML5 audio players. It serves as a client-side… themesberg/flowbite — Flowbite is a cross-framework UI library and design system built as a collection of pre-styled components and layout… jhu-ep-coursera/fullstack-course4 — This project provides educational course materials and reference code for learning frontend web development. It serves… fabiospampinato/cash — Cash is a lightweight DOM manipulation library and HTML element wrapper designed as an alternative to jQuery for…