
Product
Introducing Reports: An Extensible Reporting Framework for Socket Data
Explore exportable charts for vulnerabilities, dependencies, and usage with Reports, Socket’s new extensible reporting framework.
accounting.js is a tiny JavaScript library for number, money and currency parsing/formatting. It's lightweight, fully localisable, has no dependencies, and works great client-side or server-side. Use standalone or as a nodeJS/npm and AMD/requireJS module.
Visit the plugin homepage for demos and documentation: http://openexchangerates.github.io/accounting.js/
Please checkout or download the latest stable tag before using in production. Bug reports and pull requests are welcome.
Maintained by Open Exchange Rates and originally by @josscrowcroft and other contributors.
v0.4.1 - Alias accounting.formatNumber() as accounting.format()
v0.4 - Transferred repository to Open Exchange Rates for ongoing maintenance
v0.3.2 - Fixed package.json dependencies (should be empty object)
v0.3.0
npm install accounting and then var accounting = require("accounting"); in your nodeJS scripts.acounting.unformat now also aliased as acounting.parsedefaults methodv0.2.2 - Fixed same issue as #Num: #24 in formatNumber; switch to Google Closure Compiler for minified version.
v0.2.1 - Fixed issue #Num: #24 (locally-defined settings object was being modified by formatMoney)
v0.2
accounting.settings.currency.formatv0.1.4
v0.1.3
format parameter to control symbol and value position (default "%s%v", or [symbol][value])v0.1.2
accounting.formatColumn( [[1,12,123,1234], [1234,123,12,1]] ), returns matching array with inner columns lined up)v0.1.1
accounting.toFixed(value, precision)), which treats floats more like decimals for more accurate currency roundingNaN errors when no value in unformatv0.1 - First version
Numeral.js is a library for formatting and manipulating numbers. It provides similar functionality to accounting, such as number formatting, currency formatting, and unformatting. However, Numeral.js offers more customization options and supports a wider range of number formats.
Currency.js is a library specifically designed for handling currency values. It provides methods for formatting, parsing, and manipulating currency values. Compared to accounting, currency.js offers more robust handling of currency-specific operations and better precision for financial calculations.
Dinero.js is a library for creating, calculating, and formatting monetary values in JavaScript. It provides a comprehensive set of tools for handling money, including arithmetic operations, formatting, and currency conversion. Dinero.js is more feature-rich compared to accounting and is designed to handle complex financial scenarios.
FAQs
number, money and currency formatting library
The npm package accounting receives a total of 295,298 weekly downloads. As such, accounting popularity was classified as popular.
We found that accounting demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Explore exportable charts for vulnerabilities, dependencies, and usage with Reports, Socket’s new extensible reporting framework.

Product
Socket for Jira lets teams turn alerts into Jira tickets with manual creation, automated ticketing rules, and two-way sync.

Company News
Socket won two 2026 Reppy Awards from RepVue, ranking in the top 5% of all sales orgs. AE Alexandra Lister shares what it's like to grow a sales career here.