MetaMask / MetaMask/metamask-extension
Incorrect currency formatting
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 13.2k
- Forks
- 5.6k
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 451
Description
### Description
The formatting of the currencies are incorrect throughout the extension. Currency symbols and codes [should precede the amount in English](https://en.wikipedia.org/wiki/ISO_4217#Position_of_ISO_4217_code_in_amounts), with symbols being unspaced and codes being spaced. For example, one writes `US$5`, `$5`, and `USD 5` and not `5$US`, `5$`, and `5 USD`. Furthermore, specifying which type of dollar is being used also is done before the amount, not after. Writing `$5 USD` reads as "5 dollars US dollars", which is redundant. These issues can be seen in the sample image on the home page itself:

These should read `ETH 1`, `US$300 000.00` or `USD 300 000.00`, `ETH −3`, and `−US$600` or `USD −600`, respectively.
### Steps to reproduce
1. Open the MetaMask extension.
2. Attempt to send money, view transaction history, or view anything that would show currency amounts.
### Error messages or log output
_No response_
### Version
10.10.0
### Build type
_No response_
### Browser
Chrome, Firefox, Microsoft Edge, Brave
### Operating system
Windows, MacOS, Linux
### Hardware wallet
_No response_
### Additional context
_No response_
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by running the MetaMask extension and checking currency amounts on the home page, send-money flow, and transaction history. Trace the shared formatting path used by these views and compare its output with the requested ETH, US$, and USD examples. Done means symbols and codes appear before amounts with the specified spacing and negative-value placement throughout the extension.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- frontend, internationalization
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100