awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
s-yadav avatar

s-yadav/react-number-format

0
View on GitHub↗
4,091 stars·418 forks·JavaScript·MIT·11 views

React Number Format

This library provides a set of tools for formatting numeric values and masking user input within React components. It includes a customizable text input wrapper that synchronizes raw numeric values with formatted display strings and a specialized input masking component for enforcing string patterns and templates during data entry.

The project features a localized number formatter that utilizes browser localization APIs to apply regional grouping, prefixes, and suffixes. It supports specialized financial formatting, such as displaying negative values in parentheses, and provides the ability to render formatted numeric values as static text rather than editable inputs.

The toolset covers input pattern constraints, custom value validation to block invalid characters, and the ability to integrate formatting logic with third-party components. It also manages value capture by distinguishing between user-initiated interactions and programmatic state updates.

Features

  • Formatted Input Fields - Provides UI components that enforce specific numeric data formats via masks and pattern constraints.
  • Numeric Inputs - A comprehensive library for formatting numeric values and masking user input within React components.
  • Regional Number Formatting - Utilizes native browser APIs to localize number formatting based on regional and language standards.
  • Logic-Rendering Decouplers - Implements architectural patterns that decouple numeric formatting logic from its visual representation.
  • Formatted Input Wrappers - Provides a component wrapper that synchronizes raw numeric values with formatted display strings.
  • Input Masking Patterns - Uses template placeholders to constrain user input and automatically position delimiters.
  • Value Synchronization - Maintains real-time synchronization between raw numeric values and their formatted display strings.
  • Input Value Extractors - Extracts raw numeric values, float representations, and formatted strings directly from UI input fields.
  • Localised Number Displays - Uses browser localization APIs to format numeric values according to regional language and currency standards.
  • Masked Inputs - Enforces specific character patterns and templates during user entry to ensure data matches a predefined format.
  • Numeric Localization Utilities - Applies regional grouping, prefixes, and suffixes to numbers using browser localization APIs.
  • Numeric Formatting - Applies thousands separators, prefixes, and suffixes to numeric inputs using locale-specific conventions.
  • Template-Based Formatting - Transforms raw numeric strings into formatted versions based on predefined templates for consistent display.
  • Input Reference Observers - Connects formatting logic to external input components by passing a reference to a custom element.
  • Financial Notation - Implements specialized financial formatting, including the use of parentheses to represent negative values.
  • Input Value Guards - Verifies input values against custom logic in real time to block invalid characters before they are committed.
  • Input Event Source Tracking - Distinguishes between keyboard events and state updates to prevent recursive formatting loops.
  • Custom Element Renderers - Provides mechanisms to replace default rendering functions for input containers with custom components.
  • Formatting Wrappers - Allows wrapping formatting logic around third-party components to maintain consistent numeric patterns.
  • Financial Input Formatting - Handles specialized requirements like parentheses for negative values and precise decimal control.
  • Custom Input Overrides - Allows replacing default form input components with specialized custom implementations for formatted display.
  • Input Value Guards - Intercepts value changes via custom predicates to block updates that violate numeric rules.
  • Real-Time Input Validation - Verifies user input against custom logic in real time to block invalid characters.
  • Static Value Rendering - Allows formatted numeric values to be displayed as static text within custom elements instead of editable inputs.
  • DOM References - Uses DOM references to connect formatting logic to external custom input elements.
  • Logic Compositors - Combines formatting hooks with base components to create specialized input fields.

Star history

Star history chart for s-yadav/react-number-formatStar history chart for s-yadav/react-number-format

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does s-yadav/react-number-format do?

This library provides a set of tools for formatting numeric values and masking user input within React components. It includes a customizable text input wrapper that synchronizes raw numeric values with formatted display strings and a specialized input masking component for enforcing string patterns and templates during data entry.

What are the main features of s-yadav/react-number-format?

The main features of s-yadav/react-number-format are: Formatted Input Fields, Numeric Inputs, Regional Number Formatting, Logic-Rendering Decouplers, Formatted Input Wrappers, Input Masking Patterns, Value Synchronization, Input Value Extractors.

What are some open-source alternatives to s-yadav/react-number-format?

Open-source alternatives to s-yadav/react-number-format include: openexchangerates/accounting.js — accounting.js is a JavaScript library and utility suite for formatting localized numbers and currency strings,… igorescobar/jquery-mask-plugin — This project is a jQuery input mask plugin and library used for enforcing specific formats on form fields and HTML… nosir/cleave.js — Cleave.js is a JavaScript library that applies real-time visual formatting to form fields as users type. It provides… robinherbots/inputmask — Inputmask is a JavaScript library that serves as a client-side input formatter and form input validator. It constrains… adamwdraper/numeral-js — Numeral-js is a JavaScript number formatting library used to convert raw numeric values into human-readable strings… barvian/number-flow — number-flow is an animated number UI component that creates fluid vertical transitions between numeric values using…

Open-source alternatives to React Number Format

Similar open-source projects, ranked by how many features they share with React Number Format.
  • openexchangerates/accounting.jsopenexchangerates avatar

    openexchangerates/accounting.js

    4,985View on GitHub↗

    accounting.js is a JavaScript library and utility suite for formatting localized numbers and currency strings, rounding decimal values, and parsing currency strings. It provides tools to transform numeric values into human-readable strings using language-specific separators and custom symbols. The library includes a currency string parser to extract raw numerical values from formatted strings by removing symbols and separators. It also features a floating point rounding tool designed to prevent binary precision errors during financial calculations. Additional capabilities cover the vertical

    JavaScript
    View on GitHub↗4,985
  • igorescobar/jquery-mask-pluginigorescobar avatar

    igorescobar/jQuery-Mask-Plugin

    4,760View on GitHub↗

    This project is a jQuery input mask plugin and library used for enforcing specific formats on form fields and HTML elements. It functions as a form input masking and sanitization tool that restricts character entry and automatically inserts delimiters for patterns such as dates and phone numbers. The library supports flexible masking through optional and recursive patterns that expand or contract based on the volume of data entered. It provides dynamic mask management, allowing formatting rules to be changed or removed on existing elements without reloading the page. The tool includes capabi

    JavaScripthtml-elementjavascriptjquery-mask-plugin
    View on GitHub↗4,760
  • nosir/cleave.jsnosir avatar

    nosir/cleave.js

    17,867View on GitHub↗

    Cleave.js is a JavaScript library that applies real-time visual formatting to form fields as users type. It provides specialized utilities to enforce visual patterns for credit cards, phone numbers, dates, times, and large numerals. The library includes predefined formatting rules for common data types, such as detecting credit card issuers to apply correct spacing and managing country-specific regional patterns for international phone numbers. It also supports large numeral grouping using Western, Indian, and Chinese numbering systems. Users can define custom input patterns using specific b

    JavaScriptcredit-cardcreditcardinput
    View on GitHub↗17,867
  • robinherbots/inputmaskRobinHerbots avatar

    RobinHerbots/Inputmask

    6,460View on GitHub↗

    Inputmask is a JavaScript library that serves as a client-side input formatter and form input validator. It constrains text input fields to specific formats, such as phone numbers and dates, to ensure data consistency. The project provides guided text entry and user input validation to prevent formatting errors. It standardizes how structured information is entered in web browsers to support more reliable server-side processing. The library manages data validation and formatting by enforcing predefined patterns on user entry. It handles real-time input interception, cursor-position tracking,

    JavaScriptinputmaskjqlitejquery-plugin
    View on GitHub↗6,460
See all 30 alternatives to React Number Format→