26 مستودعات
Interception and modification of data properties before they are passed to a component.
Distinct from Component Props Management: Distinct from Component Props Management: specifically addresses the act of filtering, formatting, or renaming props during the composition phase.
Explore 26 awesome GitHub repositories matching user interface & experience · Prop Transformations. Refine with filters or upvote what's useful.
Recompose is a suite of toolsets for implementing higher-order component composition, context extraction, render optimization, and external state integration. It provides a library of utilities to wrap components in reusable logic and behavioral layers, allowing developers to chain functional wrappers and reduce nesting within a component tree. The project focuses on the composition of functional wrappers to inject properties and behavior into components. It includes a set of helpers for extracting values from component context and passing them as direct properties, as well as tools for integ
Implements tools to intercept and modify data properties, allowing for filtering and formatting before they reach a component.
This project is a React skeleton loader library and UI component set used to create animated SVG placeholder shapes that represent loading content in user interfaces. It functions as an SVG loading placeholder generator designed to prevent layout shifts by signaling data loading states. The library includes a custom loader design tool for building bespoke skeleton shapes that match specific interface layouts. It employs a rendering approach with static SVG keys to ensure the components are compatible with client-server hydration, preventing mismatches between server-side and client-side rende
Translates React component props directly into SVG attributes to control colors, dimensions, and animation speeds.
This project is a comprehensive collection of type-safe SVG icon libraries bundled into a single, consistent component-based delivery system. It functions as a multi-pack aggregator that provides a library of scalable vector graphics as components with a unified API for styling and rendering. The library integrates numerous popular open-source SVG icon sets into a single component interface, allowing users to access and render a wide variety of iconography within one dependency. It includes native type definitions to ensure property validation and enable development autocomplete. The system
Maps React component props directly to SVG attributes for real-time rendering updates.
react-icons is an SVG icon component library and multi-pack aggregator for React applications. It provides a single interface to integrate and manage multiple third-party SVG icon sets as individual components. The library is designed as a tree-shakable icon set, allowing the import of specific icons to reduce final bundle sizes. It includes a global icon style provider to define default colors, sizes, and accessibility titles across all embedded icons. The project covers multi-library icon management and frontend asset optimization to maintain a consistent design language while improving pa
Maps component properties directly to SVG XML attributes for dynamic control over icon size and color.
Linaria is a zero-runtime CSS-in-JS library and static CSS generator. It evaluates JavaScript expressions at build time to extract styles from tagged template literals into standalone, static CSS files, removing the need for a runtime style injection engine. The library distinguishes itself by mapping component props to CSS custom properties, enabling dynamic styling and runtime property updates without regenerating stylesheets. It utilizes a build-time evaluation engine to resolve interpolations and a hashing system to generate scoped class names that prevent style collisions. The project c
Maps component props to CSS custom properties, enabling dynamic visual updates without regenerating stylesheets at runtime.
Victory is a React data visualization library and composable visualization toolkit used to build interactive charts and graphs. It functions as an SVG charting framework that renders scalable data visualizations designed to maintain consistency across different web browsers and operating systems. The project provides a collection of reusable UI primitives that combine to form complex interactive data layouts. This component-based approach allows for the construction of sophisticated graphs by composing modular visualization elements within React applications.
Maps component properties and raw data arrays directly to SVG attributes for visual rendering.
SVGR is a tool that transforms static SVG files into reusable React components for direct rendering within user interface trees. It functions as an AST-based code transformer and build-time asset pipeline, parsing SVG XML into an abstract syntax tree to modify elements before generating JavaScript source code. The project integrates an external optimization engine to strip redundant metadata and minify attributes, ensuring vector images are flexible and easy to style. It uses recursive tree traversal to apply these transformations to all nested graphic elements and employs attribute mapping t
Translates kebab-case SVG attributes into compatible camelCase React props using predefined mapping rules.
This project is an ESLint plugin and static analysis tool designed to enforce best practices, prevent bugs, and maintain code quality in React projects. It functions as a specialized JSX linter that analyzes the syntax and structure of components to detect anti-patterns and API misuse. The plugin distinguishes itself by providing deep analysis of React-specific patterns, such as detecting state race conditions, preventing nested component definitions, and identifying unstable references that cause unnecessary re-renders. It also includes security hardening rules to identify vulnerabilities li
Enforces alphabetical ordering of props in elements to make them easier to locate and maintain.
Styled System is a JavaScript library that provides a style props approach for building UI components, enabling developers to map CSS properties directly to component props for rapid, declarative development. At its core, it resolves design tokens from a centralized theme object into CSS values, ensuring consistent styling across components without writing custom stylesheets. The library supports theme-aware styling that connects component styles to a theme object for scalable, maintainable design systems with dynamic value resolution. The library differentiates itself through several capabil
Provides functional prop values that compute styles dynamically based on theme or component state.
Inertia is a server-driven frontend framework designed to create monolithic single page applications. It acts as a state synchronization protocol and client-side routing bridge, allowing developers to build interactive experiences using modern JavaScript component libraries while keeping routing and controllers on the server. This approach eliminates the need for a separate REST or GraphQL API layer by passing data from server controllers to frontend components as props via JSON payloads. The framework distinguishes itself by utilizing adapter-based integration to link various backend environ
Converts complex objects into specific data formats using context-aware interfaces before they reach components.
Tabulator is an interactive data table library and virtual DOM data grid used to create high-performance tables from JSON or arrays. It functions as a hierarchical data viewer and a spreadsheet interface component, capable of rendering thousands of records efficiently through viewport-based virtualization and progressive loading. The library distinguishes itself by providing a full spreadsheet interface mode with multi-sheet management, cell range selection, and bulk copy-paste capabilities. It supports complex data architectures, including nested data field mapping, expandable tree structure
Resets the invalid flag for individual cells or the whole table to mark entries as valid.
This project is a Prettier plugin and Tailwind CSS class sorter that automatically organizes utility classes into a consistent and recommended order. It functions as a frontend styling formatter and CSS utility organizer, removing duplicate classes and sorting style attributes across HTML and JavaScript files. The tool ensures consistent markup formatting by ordering utility classes within HTML attributes, template literals, JavaScript expressions, and custom framework props. It integrates with Tailwind CSS configuration files and stylesheets to synchronize sorting behavior with custom theme
Reorders utility classes found within non-standard attributes or framework props.
react-chartjs-2 is a data visualization library that provides a set of React components acting as a wrapper for Chart.js. It allows for the rendering of interactive charts and graphs within a React application using a declarative approach. The library manages HTML5 canvas charting components by tying the lifecycle of Chart.js instances to the mounting and unmounting of the React component tree. It translates component props into the configuration objects required by the underlying engine to map datasets to visual elements. The project covers a range of frontend integration capabilities, incl
Translates React component props into the configuration objects required by the underlying charting engine.
react-chartjs-2 is a data visualization library that provides a set of React components to integrate the Chart.js library. It serves as a component-based charting interface for rendering dynamic data visualizations and graphs based on structured data sets. The project provides a declarative way to manage chart configurations and data updates. It maps component props to the underlying charting engine, allowing users to modify visual options and data dynamically to refresh displays. The library covers broader data visualization development, including the implementation of dynamic dashboards an
Transforms React component props into the specific configuration objects required by the underlying charting engine.
Vuelidate is a model-based validation library for Vue.js applications. It functions as a client-side data validator and validation engine that decouples verification logic from the user interface by checking data models and state objects against defined rules. The system tracks field interactions and marks inputs as dirty to manage when validation messages are triggered. This approach allows the library to provide real-time user input feedback and verify model integrity before data is submitted. The framework covers form state validation, validation error rendering, and the configuration of
Includes utilities for resetting the dirty state of inputs to clear validation warnings during form resets.
React Native Gesture Handler is a declarative library that exposes the platform's native touch and gesture system to React Native, enabling smooth, deterministic gesture handling on the UI thread. It manages gesture recognition through a native state machine with defined transitions between states like BEGAN, ACTIVE, END, and CANCELLED, routing touch events through platform-native gesture recognizers on both iOS and Android. The library provides a comprehensive gesture composition framework that allows developers to combine multiple gestures into race, simultaneous, or exclusive sequences, co
Passes Reanimated SharedValues as props for swipeable component configuration.
This project is a comprehensive interview preparation guide and technical study resource for React. It functions as a frontend engineering curriculum and coding challenge bank designed to help developers master the internal mechanics, patterns, and core fundamentals of the React ecosystem. The resource distinguishes itself by providing a curated collection of technical interview questions, conceptual quizzes, and expert solutions. It includes a bank of coding challenges that can be solved in a browser-based environment with automated test cases and real-time rendering, as well as research int
Teaches strategies for resetting component state using keys or explicit reset actions.
Codehike is a React-based documentation framework and interactive code walkthrough tool. It functions as a markdown content orchestrator that transforms decorated markdown into structured data and React components, serving as a visualization layer for highlighting code ranges, diffs, and compiler errors. The project is distinguished by its ability to create scrollycoding experiences and step-by-step technical tutorials. It features token-level animations that visually demonstrate how logic evolves between code versions and provides a system for syncing UI state to the browser scroll position.
Converts decorated markdown syntax into structured JavaScript objects passed as props to React components.
bootstrap-fileinput is a Bootstrap-compatible HTML5 file upload widget and plugin. It provides a customizable interface for selecting and uploading multiple files, featuring integrated image previews, drag-and-drop support, and client-side validation for file types, sizes, and counts. The project includes a resumable file upload client that slices large files into chunks to ensure stability over intermittent connections and allow transfers to be paused and resumed. It also features a client-side image processor capable of resizing images and reading EXIF metadata to automatically correct imag
Includes functionality to clear selected files and upload stacks via soft or hard resets.
هذا منسق كود لملفات قوالب Blade يعمل على توحيد المسافات البادئة والتباعد داخل محرر VS Code. يعمل كمنسق للقوالب ومرتب لسمات HTML يقوم بتنظيف البنية والتخطيط بناءً على قواعد نمط مخصصة أو محددة مسبقاً. تتميز الأداة بتنظيم سمات HTML تلقائياً وترتيب فئات Tailwind CSS في تسلسل متوقع. تستخدم نظاماً قابلاً للتكوين عبر JSON لتحميل قواعد خاصة بالمشروع وقوائم استبعاد، مما يتيح للفرق مزامنة أنماط الكود ومنع تعارضات التحكم في الإصدار. تشمل الإمكانيات الواسعة إدارة نطاق التنسيق من خلال قوائم التجاهل العامة أو التعليقات المضمنة، والتحقق من ملفات التكوين مقابل مخطط رسمي، وتخصيص قواعد المسافات البادئة والمسافات البيضاء. يتكامل المشروع مع المحرر باستخدام بروتوكول خادم اللغة (Language Server Protocol).
Reorganizes HTML attributes based on alphabetical or custom regular expression patterns.