awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

9 repositorios

Awesome GitHub RepositoriesControlled Components

Patterns for synchronizing input element values with component state.

Distinguishing note: Focuses on the state-synchronization pattern rather than general form management.

Explore 9 awesome GitHub repositories matching user interface & experience · Controlled Components. Refine with filters or upvote what's useful.

Awesome Controlled Components GitHub Repositories

Encuentra los mejores repositorios con IA.Buscaremos los repositorios que mejor coincidan usando IA.
  • preactjs/preactAvatar de preactjs

    preactjs/preact

    38,701Ver en GitHub↗

    Preact is a lightweight declarative user interface library designed for building high-performance web applications. It utilizes a component-based architecture where interfaces are defined as functional or class-based units, relying on a virtual DOM to perform efficient state reconciliation and updates. By prioritizing a minimal footprint, the library enables developers to create modular, predictable, and testable user interfaces while maintaining compatibility with standard browser APIs. The library distinguishes itself through a reactive state engine that leverages signals to track dependenc

    Supports controlled components that synchronize input values with state via explicit property updates.

    JavaScriptcomponentsdomjsx
    Ver en GitHub↗38,701
  • jaredpalmer/formikAvatar de jaredpalmer

    jaredpalmer/formik

    34,343Ver en GitHub↗

    Formik is a React form management library and state management tool. It serves as a client-side form validator for checking user entries against defined rules and managing associated error messages before submission. The library synchronizes user input values across multiple fields into a single object for retrieval and manipulates the transition of form data from initial entry through validation and final submission. It provides capabilities for tracking complex form state, managing form submissions, and validating user inputs to ensure data integrity.

    Provides the logic to synchronize internal form state with input elements using the controlled component pattern.

    TypeScriptformformikforms
    Ver en GitHub↗34,343
  • facebook/draft-jsAvatar de facebook

    facebook/draft-js

    22,641Ver en GitHub↗

    Draft-js is a framework for building customizable rich text editors within React applications. It functions as a content editable framework that separates the underlying data model from the visual rendering layer, acting as a rich text content engine to manage complex text data and formatting. The project utilizes an immutable state management system to ensure consistent updates and predictable undo history. It manages editor state through persistent data structures, providing an immutable data state manager to prevent accidental mutation. The framework includes capabilities for high perform

    Binds the editor's internal state to React via a controlled component interface for external state management.

    JavaScript
    Ver en GitHub↗22,641
  • unovue/reka-uiAvatar de unovue

    unovue/reka-ui

    6,574Ver en GitHub↗

    Implements controlled-uncontrolled state patterns for UI components, enabling flexible data flow integration.

    Vueaccessibilityaccessiblecomponent-library
    Ver en GitHub↗6,574
  • pmndrs/levaAvatar de pmndrs

    pmndrs/leva

    5,981Ver en GitHub↗

    Leva es un panel de control de GUI para React y un editor de parámetros en tiempo real utilizado para monitorear y ajustar el estado y las variables de la aplicación sin modificar el código ni recargar la página. Funciona como un depurador de estado dinámico y una biblioteca de entrada extensible que proporciona una interfaz visual para ajustar valores numéricos, booleanos y de texto dentro de una aplicación web en ejecución. El proyecto se distingue por un sistema de plugins que permite la creación de componentes de entrada personalizados y comportamientos especializados para admitir tipos de datos únicos. Utiliza inferencia de tipos para mapear automáticamente los datos al widget visual apropiado, aunque este mapeo puede ser anulado para forzar tipos de entrada específicos. La interfaz admite diversas categorías de entrada, incluyendo rangos numéricos, vectores, selectores de color y campos de carga de archivos multimedia. Los controles pueden organizarse en carpetas jerárquicas, mostrarse condicionalmente según otros valores y sincronizarse con almacenes de datos externos. El sistema también monitorea el ciclo de vida de la edición, permitiendo callbacks cuando los usuarios comienzan y terminan las interacciones para optimizar el rendimiento en operaciones costosas.

    Allows updating the control panel's state programmatically via getter and setter methods from external application logic.

    TypeScript
    Ver en GitHub↗5,981
  • moroshko/react-autosuggestAvatar de moroshko

    moroshko/react-autosuggest

    5,940Ver en GitHub↗

    React Autosuggest is a fully controlled React component that provides an autocomplete input with a dropdown of suggestions as the user types. It delegates all state management to the parent component through callbacks, making it compatible with state management patterns like Flux or Redux. The component implements WAI-ARIA accessibility patterns, including keyboard navigation with arrow keys, Enter, and Escape, along with live region integration for screen reader announcements. The component offers extensive customization through render-prop functions, allowing developers to replace the defau

    Delegates all state management to the parent via callbacks, implementing a fully controlled component pattern.

    JavaScript
    Ver en GitHub↗5,940
  • facebook/componentkitAvatar de facebook

    facebook/componentkit

    5,787Ver en GitHub↗

    ComponentKit is a declarative UI framework for building iOS interfaces through composition of small, reusable components. It provides a structured approach to constructing user interfaces where each component is defined as an immutable, pure function of its inputs, enabling predictable rendering and state management. The framework supports both stateless and stateful components, with controllers that can be attached to manage persistent state across component updates. The framework distinguishes itself through its component architecture that emphasizes explicit data flow and compile-time safe

    Allows controllers to trigger component state changes by calling update methods with new values.

    Objective-C++
    Ver en GitHub↗5,787
  • chakra-ui/zagAvatar de chakra-ui

    chakra-ui/zag

    5,121Ver en GitHub↗

    Zag es una librería de máquina de estados de UI headless que proporciona lógica de componentes sin estilo para asegurar un comportamiento consistente en diferentes motores de renderizado. Funciona como un kit de herramientas para modelar interacciones complejas de interfaz de usuario usando statecharts, desacoplando la lógica subyacente y los atributos de accesibilidad del estilo visual. La librería es agnóstica al framework, utilizando adaptadores especializados para conectar su lógica de máquina de estados con varias librerías de JavaScript como React, Solid, Vue y Svelte. Este enfoque permite a los desarrolladores mantener un modelo de interacción único mientras aplican cualquier solución CSS o de estilo a través de atributos de datos dirigidos por estado. Zag cubre una amplia gama de áreas funcionales, incluyendo gestión integral de accesibilidad para navegación por teclado y atributos ARIA, así como una vasta colección de primitivas interactivas. Estas incluyen controles de entrada, elementos de navegación como menús y pestañas, componentes de superposición como diálogos y popovers, y manejo complejo de medios para recorte de imágenes y captura de firmas. También proporciona utilidades para la gestión de datos jerárquicos, manejo de listas asíncronas y un sistema para construir tours guiados de productos.

    Allows external controllers to update machine context and state through programmatic bindings and initial properties.

    TypeScripta11yaccessibilityagnostic
    Ver en GitHub↗5,121
  • nomcopter/react-mosaicAvatar de nomcopter

    nomcopter/react-mosaic

    4,759Ver en GitHub↗

    react-mosaic es un gestor de ventanas en mosaico de React utilizado para organizar componentes en una rejilla redimensionable de ventanas y contenedores con pestañas. Proporciona un sistema de diseño con paneles divididos redimensionables y un orquestador de ventanas arrastrables para organizar el contenido en filas y columnas anidadas. El sistema incluye un motor de diseño serializable que convierte las disposiciones de ventanas en JSON, permitiendo la persistencia y restauración de configuraciones de espacio de trabajo entre sesiones. Admite una interfaz de espacio de trabajo con pestañas donde múltiples paneles se agrupan en áreas únicas con encabezados conmutables. El proyecto cubre una gestión integral del diseño a través de control programático y mosaico automatizado, incluyendo la reorganización mediante arrastrar y soltar y el reequilibrio del orden de las ventanas. También proporciona opciones de personalización de UI para barras de herramientas de ventanas, encabezados de pestañas y renderizado de estados vacíos.

    Provides a controlled state interface to synchronize the internal layout tree with external React state.

    TypeScriptreacttiling-window-managertypescript
    Ver en GitHub↗4,759
  1. Home
  2. User Interface & Experience
  3. Controlled Components

Explorar subetiquetas

  • Controller-Initiated State Updates1 sub-etiquetaTriggering component state changes from controllers by calling update methods with new values. **Distinct from Controlled Components:** Distinct from Controlled Components: focuses on controller-initiated state updates rather than input synchronization patterns.