Migrate libraries into core monorepo
- Dominant language
- TypeScript
- Stars
- 413
- Forks
- 308
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 253
Description
We would like to migrate most MetaMask libraries into this monorepo to make them easier to maintain. We may want to exclude libraries that are:
* Experimental
* Deprecated, or not encouraged to be used in our codebase anymore
* Not used directly in a MetaMask client
* Intended primarily for external developers integrating with MetaMask
* Specific to extensions or React Native
* Too noisy/high-volume
* Deployed both as a website and an npm package
* Controllers (these are represented by https://github.com/MetaMask/core/issues/700)
* Conceptually distinct in some way (this one is subjective)
Here is the list of libraries that seem like a good fit today:
- [ ] https://github.com/MetaMask/abi-utils
- [ ] https://github.com/MetaMask/eth-block-tracker
- [ ] https://github.com/MetaMask/eth-hd-keyring
- [ ] https://github.com/MetaMask/eth-json-rpc-filters
- [ ] https://github.com/MetaMask/eth-json-rpc-infura
- [ ] https://github.com/MetaMask/eth-json-rpc-middleware
- [x] https://github.com/MetaMask/eth-json-rpc-provider
- [ ] https://github.com/MetaMask/eth-ledger-bridge-keyring
- [ ] https://github.com/MetaMask/eth-method-registry
- [x] https://github.com/MetaMask/eth-phishing-detect (but just the detector, not the config)
- [ ] https://github.com/MetaMask/eth-rpc-errors
- [ ] https://github.com/MetaMask/eth-sig-util
- [ ] https://github.com/MetaMask/eth-simple-keyring
- [ ] https://github.com/MetaMask/eth-token-tracker
- [ ] https://github.com/MetaMask/eth-trezor-keyring
- [ ] https://github.com/MetaMask/etherscan-link
- [x] https://github.com/MetaMask/json-rpc-engine
- [x] https://github.com/MetaMask/json-rpc-middleware-stream
- [ ] https://github.com/MetaMask/key-tree ? (check in with Snaps team first)
- [ ] https://github.com/MetaMask/metamask-eth-abis
- [ ] https://github.com/MetaMask/nonce-tracker
- [ ] https://github.com/MetaMask/providers
- [ ] https://github.com/MetaMask/rpc-errors
- [ ] ~https://github.com/MetaMask/scure-bip39~ This is a fork, so we might not want to do this
- [x] https://github.com/MetaMask/utils
See https://github.com/MetaMask/core/issues/1079#issuecomment-1700126302 for instructions on accomplishing this.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reading the instructions in the linked issue comment and reviewing the unchecked library list in this issue. Confirm which libraries meet the stated inclusion criteria and which exclusions apply. Done means the selected libraries have been migrated into the monorepo and the checklist reflects their status.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- build-system, tooling
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100