MetaMask / MetaMask/core

Migrate API interactions from controllers to API modules

Open
#430 0 comments 0 reactions 0 assignees View on GitHub
team-assets team-wallet-framework wf-controller-tech-debt
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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.