This monorepo is a collection of packages used across multiple MetaMask clients

Is MetaMask/core beginner-friendly?

In the last 30 days, MetaMask/core merged 262 of 377 pull requests from outside contributors, and its maintainers usually reply within 1 day. 12 beginner-friendly issues are open now.

Stars
422
Forks
313
Open beginner issues
12
Indexed issues
331
Avg merge
1d 8h
Merged PRs (30d)
414
Dominant language
TypeScript
License
MIT
Last GitHub push
Nov 4, 2026
Latest indexed
Sep 19, 2026
Contributing guide
No contributing guide
Code of conduct
Code of conduct
Beginner labels
No beginner labels indexed

How to contribute to MetaMask/core

  1. There is no contributing guide, so start from the README and a few recently merged pull requests to see how changes are proposed.
  2. Read its code of conduct: it covers issues and pull requests as well as chat.
  3. Your contributions will be published under the project's MIT license.
  4. Pick one of the 12 open beginner-friendly issues below and comment that you want to work on it before you start.

Issues somebody may already be working on are listed last. List everything by date

  • EIP-1898 object selectors fail before downstream RPC in eth-json-rpc-middleware 26.0.0
    Open

    Difficulty 2/5 1-3 hours Newbie friendliness 62/100

    MetaMask/core#11219 ·

    Maintainers usually reply within 1 day

  • 🚨 CRITICAL: Active EIP-7702 sweeper operation on BNB Chain, Base, Optimism (~1.23M txs, operator funded via Bybit)
    Open

    Difficulty 4/5 3-5 days Newbie friendliness 25/100

    MetaMask/core#10682 ·

    Maintainers usually reply within 1 day

  • Dependency Dashboard
    Open

    Difficulty 5/5 Over a week Newbie friendliness 20/100

    MetaMask/core#10300 ·

    Maintainers usually reply within 1 day

  • [utils] Ban enums, and replace them with alternatives
    Open

    Difficulty 4/5 3-5 days Newbie friendliness 65/100

    MetaMask/core#10211 ·

    Maintainers usually reply within 1 day

  • Cannot sign a UserOperation for gasless approve + swap with MetaMask Stateless7702
    Open

    Difficulty 5/5 Over a week Newbie friendliness 30/100

    MetaMask/core#9970 ·

    Maintainers usually reply within 1 day

  • Tested with Firefox 152.0.5 and 154.0a1, both had the issue with jQuery.
    Open

    Difficulty 5/5 Over a week Newbie friendliness 10/100

    MetaMask/core#9805 ·

    Maintainers usually reply within 1 day

  • Remove legacy global/selected-chain path from GasFeeController
    Open
    team-confirmations

    Difficulty 4/5 3-5 days Newbie friendliness 55/100

    MetaMask/core#9585 ·

    Maintainers usually reply within 1 day

  • False-Positive/Removal Request.
    Open

    Difficulty 4/5 3-5 days Newbie friendliness 25/100

    MetaMask/core#9479 ·

    Maintainers usually reply within 1 day

  • Derive transaction status-change events from state in `#updateTransactionInternal`
    May be free again @matthewwalsh0 claimed this 127 days ago, and no pull request is open. Open
    team-confirmations

    MetaMask/core#9412 · 1 assignee ·

    Maintainers usually reply within 1 day

  • False positive on my website
    Open

    Difficulty 4/5 3-5 days Newbie friendliness 25/100

    MetaMask/core#9410 ·

    Maintainers usually reply within 1 day

  • Backport workflow-hardening fix (unpinned-uses) to 5 release branches
    Open

    Difficulty 3/5 3-5 days Newbie friendliness 72/100

    MetaMask/core#9276 ·

    Maintainers usually reply within 1 day

  • Support smart-contract / multisig accounts (e.g. Safe) via keyring Snaps — relax the internal-account guards
    Open

    Difficulty 5/5 Over a week Newbie friendliness 45/100

    MetaMask/core#9179 ·

    Maintainers usually reply within 1 day

  • wallet: Make `fetch` injectable in `NetworkController` initialization
    May be free again @grypez claimed this 169 days ago, and no pull request is open. Open
    team-ocap-kernel

    MetaMask/core#8793 · 1 assignee ·

    Maintainers usually reply within 1 day

  • wallet: Document the state-injection contract in README
    May be free again @grypez claimed this 169 days ago, and no pull request is open. Open
    team-ocap-kernel

    MetaMask/core#8792 · 1 assignee ·

    Maintainers usually reply within 1 day

  • wallet: Make and record an init-messenger pattern decision
    May be free again @grypez claimed this 169 days ago, and no pull request is open. Open
    team-ocap-kernel

    MetaMask/core#8790 · 1 assignee ·

    Maintainers usually reply within 1 day

  • wallet-cli: Integrate ocap kernel
    Open
    team-ocap-kernel

    Difficulty 5/5 Over a week Newbie friendliness 25/100

    MetaMask/core#8683 ·

    Maintainers usually reply within 1 day

  • [P2] `QueryClient` distributed-tracing observability in `BaseDataService`
    May be free again @MajorLift claimed this 51 days ago, and no pull request is open. Open
    for-migration mig-epic-42-child

    Difficulty 4/5 3-5 days Newbie friendliness 50/100

    MetaMask/core#8552 · 1 assignee ·

    Maintainers usually reply within 1 day

  • Expose replacement implementations of `QueryClient` APIs in UI
    Open

    Difficulty 5/5 Over a week Newbie friendliness 25/100

    MetaMask/core#8531 ·

    Maintainers usually reply within 1 day

  • Block `QueryClient` API surface in UI
    Open

    Difficulty 4/5 3-5 days Newbie friendliness 48/100

    MetaMask/core#8530 ·

    Maintainers usually reply within 1 day

  • Upgrade to TypeScript 6.0
    Open
    team-core-platform wf-typescript-upgrades

    Difficulty 4/5 3-5 days Newbie friendliness 38/100

    MetaMask/core#8210 · 2 comments ·

    Maintainers usually reply within 1 day

  • [RemoteFeatureFlagController] Unclear behaviour on threshold ordering.
    Open
    team-extension-platform team-mobile-platform

    Difficulty 4/5 3-5 days Newbie friendliness 30/100

    MetaMask/core#8122 · 4 comments ·

    Maintainers usually reply within 1 day

  • Custom tokens show 0 balance after import
    Open

    Difficulty 4/5 3-5 days Newbie friendliness 48/100

    MetaMask/core#7888 · 6 comments ·

    Maintainers usually reply within 1 day

  • [base-controller] Make `metadata` a static property
    Open
    team-core-platform

    Difficulty 4/5 3-5 days Newbie friendliness 42/100

    MetaMask/core#7633 ·

    Maintainers usually reply within 1 day

  • [base-controller] Make `name` a static property
    Open
    team-core-platform

    Difficulty 3/5 1-2 days Newbie friendliness 45/100

    MetaMask/core#7632 ·

    Maintainers usually reply within 1 day

  • Re-enable `jsdoc/check-tag-names`
    Open
    team-core-platform

    Difficulty 4/5 3-5 days Newbie friendliness 45/100

    MetaMask/core#7629 ·

    Maintainers usually reply within 1 day

  • Re-enable `jsdoc/require-jsdoc`
    Open
    team-core-platform

    Difficulty 4/5 3-5 days Newbie friendliness 35/100

    MetaMask/core#7628 ·

    Maintainers usually reply within 1 day

  • Proxy Key Implementation
    Open

    Difficulty 5/5 Over a week Newbie friendliness 15/100

    MetaMask/core#7549 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `user-operation-controller`
    Open
    No-Epic team-confirmations

    Difficulty 3/5 1-2 days Newbie friendliness 30/100

    MetaMask/core#7399 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `token-search-discovery-controller`
    Open
    team-assets

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7396 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `signature-controller`
    Open
    No-Epic team-confirmations

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7393 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `selected-network-controller`
    Open
    team-wallet-integrations

    Difficulty 3/5 1-2 days Newbie friendliness 30/100

    MetaMask/core#7391 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `profile-sync-controller`
    Open
    team-accounts

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7386 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `phishing-controller`
    Open
    team-product-safety

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7382 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `network-enablement-controller`
    Open
    team-assets

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7378 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `name-controller`
    Open
    No-Epic team-confirmations

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7376 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `multichain-transactions-controller`
    Open
    team-accounts

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7375 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `multichain-api-middleware`
    Open
    team-wallet-integrations

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7373 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `multichain-account-service`
    Open
    team-accounts

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7372 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `message-manager`
    Open
    No-Epic team-confirmations

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7370 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `logging-controller`
    Open
    No-Epic team-confirmations

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7369 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `gator-permissions-controller`
    Open
    team-delegation

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7365 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `gas-fee-controller`
    Open
    No-Epic team-confirmations

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7364 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `foundryup`
    Open
    team-extension-platform team-mobile-platform

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7363 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `ens-controller`
    Open
    No-Epic team-confirmations

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7358 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `eip1193-permission-middleware`
    Open
    team-wallet-integrations

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7357 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `eip-5792-middleware`
    May be free again @ruhil6789 claimed this 284 days ago, and no pull request is open. Open
    team-wallet-integrations

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7355 · 1 comment ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `earn-controller`
    Open
    team-earn

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7354 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `delegation-controller`
    Open
    team-delegation

    Difficulty 3/5 1-2 days Newbie friendliness 25/100

    MetaMask/core#7353 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `chain-agnostic-permission`
    Open
    team-wallet-integrations

    Difficulty 3/5 1-2 days Newbie friendliness 32/100

    MetaMask/core#7348 ·

    Maintainers usually reply within 1 day

  • Fix suppressed lint errors in `bridge-status-controller`
    Open
    team-swaps-and-bridge

    Difficulty 3/5 1-2 days Newbie friendliness 35/100

    MetaMask/core#7346 ·

    Maintainers usually reply within 1 day

Showing the newest 100

This page lists what was indexed most recently. Advanced filter has the whole inventory, narrowed by language, difficulty and how long a task takes.

Open advanced filter

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.