Migrate API interactions from controllers to API modules
- Dominant language
- TypeScript
- Stars
- 413
- Forks
- 308
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 253
Description
As part of [the controller API redesign](https://github.com/MetaMask/controllers/issues/337), we will be migrating API interactions in controllers to separate modules, to simplify our controllers. This is a tracking issue for migrating each of those API interactions.
- [x] Fiat exchange rates from CryptoCompare (CurrencyRateController) - Completed in #353
- [ ] Token exchange rates from CoinGecko (TokenRatesController) (#625 )
- [ ] Token/NFT balance checking (AssetsContractController)
- [ ] JSDelivr phishing configuration (PhishingController)
- [ ] Etherscan account transaction history (TransactionController via `util.js`)
- [ ] EthQuery (AccountTrackerController)
- [ ] EthQuery (TransactionController)
- [ ] EthQuery (NetworkController)
- [ ] Collectible/Token Detection (AssetsDetectionController)
- [ ] Ethers/Token Contract/Interace Support Check (TokensController)
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reading the controller API redesign in #337, then choose one unchecked interaction from the list, such as TokenRatesController or PhishingController. Trace that controller's API interaction and define the corresponding separate module before updating the checklist; done means the selected migration is complete and its behavior remains covered.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- api, backend-api-design
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 32/100