Sobre o projeto
O MetaMask Mobile é o cliente móvel da carteira MetaMask, fornecendo acesso a sites e aplicações que usam a blockchain Ethereum. É uma aplicação React Native distribuída para iOS e Android, com o repositório contendo o código-fonte completo, ferramentas de build e documentação para desenvolvedores.
O que faz
- Atua como carteira móvel e navegador integrado para sites e dapps baseados em Ethereum.
- Conecta-se a redes blockchain através de um project ID da Infura, necessário para a aplicação alcançar redes.
- Usa o Firebase Cloud Messaging para comunicações da aplicação, exigindo ficheiros de configuração de plataforma para iOS e Android.
Fluxos de desenvolvimento
- Percurso Expo (recomendado): os desenvolvedores evitam compilar código nativo ao descarregar um build de desenvolvimento pré-compilado e executar o bundler JavaScript. A configuração usa Node, Yarn v4 e Watchman; os comandos incluem `yarn setup:expo`, `yarn watch` e scripts auxiliares como `yarn install:ios:dev` e `yarn install:android:dev`, que obtêm builds a partir de artefactos do GitHub Actions, com caching e opções `--force-download`.
- Percurso nativo: necessário ao modificar código nativo ou adicionar bibliotecas com componentes nativos. Requer uma configuração completa do ambiente nativo, `yarn setup`, depois `yarn watch` mais `yarn start:ios` ou `yarn start:android`.
Notas de configuração
- Os contribuidores internos obtêm o `.js.env` a partir do 1Password; os contribuidores externos criam uma chave API da Infura e renomeiam `.js.env.example`.
- A configuração do Firebase difere para contribuidores internos e externos; os utilizadores externos criam o seu próprio projeto Firebase com o nome de pacote `io.metamask` e geram variáveis de ambiente base64 para os ficheiros de serviço.
Ferramentas e qualidade
- Os Git hooks via Husky são opcionais (`yarn git:hooks:install`), executando Prettier e ESLint através do lint-staged no commit, com formas documentadas de os ignorar.
- As competências de agentes de IA são sincronizadas a partir de repositórios partilhados de competências MetaMask para caminhos apenas locais; `yarn install` sincroniza um conjunto base e `yarn skills` sincroniza todos os domínios, com configuração local opcional.
- A documentação abrange arquitetura, animações, configuração de ambiente, resolução de problemas, testes de visualização de componentes, testes E2E, depuração, desempenho, criação de perfis de builds de lançamento, Storybook e distribuição interna Android.
Este repositório destina-se a desenvolvedores que contribuem para ou constroem sobre o cliente móvel MetaMask, e não a utilizadores finais que instalam a aplicação.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.