Aproveitamos o poder dos espaços de trabalho pnpm para manter nosso monorepo funcionando de maneira mais suave do que uma panqueca recém-amanteigada.
Clone o Hey monorepo em sua máquina local:
git clone [email protected]:/repos/hey/hey.git
Balançando um macOS? Você pode pegar ambos com o Homebrew, como um verdadeiro mestre cervejeiro:
brew install nvm pnpm
Use nvm
para invocar a versão mágica do Node.js que você precisa:
nvm install
Teleporte-se para a raiz do repositório e deixe o pnpm espalhar sua magia de dependência:
pnpm install
.env
Canalize seu assistente interno e crie um arquivo .env
do modelo .env.example
para cada pacote e aplicativo que precisar dele. Não se esqueça de adicionar as variáveis de ambiente necessárias!
cp .env.example .env
Não se esqueça de imitar e repetir a criação do arquivo .env
para cada pacote e aplicativo que precisar dele. Consistência é a chave!
Quando todas as estrelas estiverem alinhadas e tudo estiver no lugar, inicie o aplicativo no modo de desenvolvimento:
pnpm dev
Pronto para construir o aplicativo? Basta executar este comando:
pnpm build
Quer executar testes enquanto desenvolve? Veja como você faz isso:
pnpm test
Usamos ts-prune
para localizar e eliminar exportações não utilizadas e auxiliares ocultos em nossa base de código. Apenas um aviso: você precisará executar esta tarefa manualmente para cada pacote e aplicativo. Boa poda!
cd apps/web ; npx ts-prune -i generated.ts
Hora de dar uma repaginada em nossas dependências! Contamos com os poderes mágicos do pnpm
para manter tudo atualizado e com boa aparência.
script/clean-branches
script/update-dependencies
Confiamos pnpm
para manter nosso arquivo de bloqueio atualizado e fabuloso!
script/clean-branches
script/update-lock-file
Usamos Ripgrep para pesquisar texto na base de código. É como grep
e ag
tivessem um bebê, e esse bebê cresceu e se tornou um demônio da velocidade!
Instale-o via Homebrew:
brew install ripgrep
Procure texto na base de código:
rg " const Verified "
Em apps/web
, temos um analisador de pacotes que revela o tamanho e o conteúdo de nossos pacotes de produção. É como ter uma visão de raio X para o seu código!
Para gerar esta saída, execute:
cd apps/web
ANALYZE=true pnpm build
Execute este comando para criar o projeto apps/web
e observe três janelas do navegador se abrirem magicamente, cada uma exibindo detalhes do pacote para nós, bordas e pacotes de cliente. O pacote do cliente é o super-herói do desempenho da página, enquanto todos os pacotes desempenham um papel vital no desenvolvimento e no desempenho da construção.
Pedimos gentilmente a todos os colaboradores e membros da equipe que sigam nosso Código de Conduta. Pense nisso como o livro de regras de ouro da nossa comunidade: jogue bem e mantenha as boas vibrações fluindo!
Este projeto é de código aberto sob a licença AGPL-3.0 . Para todos os detalhes essenciais, verifique o arquivo LICENSE. É uma verdadeira virada de página!
Nós ? você vai à lua e volta! Seu apoio é como um suprimento interminável de café para o nosso código. Obrigado por fazer do Hey o lugar mais incrível do universo!
?