Aprovechamos el poder de los espacios de trabajo pnpm para mantener nuestro monorepo funcionando mejor que un panqueque recién untado con mantequilla.
Clona Hey monorepo en tu máquina local:
git clone [email protected]:/repos/hey/hey.git
¿Tienes un macOS? Puedes tomar ambos con Homebrew, como un verdadero maestro cervecero:
brew install nvm pnpm
Utilice nvm
para invocar la versión mágica de Node.js que necesita:
nvm install
Teletranspórtate a la raíz del repositorio y deja que pnpm aplique su magia de dependencia:
pnpm install
.env
Canalice su asistente interno y cree un archivo .env
a partir de la plantilla .env.example
para cada paquete y aplicación que lo necesite. ¡No olvide agregar las variables de entorno necesarias!
cp .env.example .env
No olvide jugar al imitador y repetir la creación de este archivo .env
para cada paquete y aplicación que lo necesite. ¡La consistencia es clave!
Cuando todas las estrellas se alineen y todo esté en su lugar, inicie la aplicación en modo de desarrollo:
pnpm dev
¿Listo para crear la aplicación? Simplemente ejecute este comando:
pnpm build
¿Quieres ejecutar pruebas mientras desarrollas? Así es como lo haces:
pnpm test
Usamos ts-prune
para buscar y eliminar exportaciones no utilizadas y ayudantes que acechan en nuestro código base. Solo un aviso: deberás ejecutar esta tarea manualmente para cada paquete y aplicación. ¡Feliz poda!
cd apps/web ; npx ts-prune -i generated.ts
¡Es hora de renovar nuestras dependencias! Confiamos en los poderes mágicos de pnpm
para mantener todo actualizado y con un aspecto impecable.
script/clean-branches
script/update-dependencies
¡Confiamos en pnpm
para mantener nuestro archivo de bloqueo actualizado y fabuloso!
script/clean-branches
script/update-lock-file
Usamos Ripgrep para buscar texto en el código base. ¡Es como si grep
y ag
tuvieran un bebé, y ese bebé creció hasta convertirse en un demonio de la velocidad!
Instálalo a través de Homebrew:
brew install ripgrep
Busque texto en el código base:
rg " const Verified "
En apps/web
, tenemos un analizador de paquetes que revela el tamaño y el contenido de nuestros paquetes de producción. ¡Es como tener visión de rayos X para tu código!
Para generar esta salida, ejecute:
cd apps/web
ANALYZE=true pnpm build
Ejecute este comando para crear las apps/web
y observe cómo se abren mágicamente tres ventanas del navegador, cada una de las cuales muestra detalles de los paquetes de nodo, borde y cliente. El paquete de cliente es el superhéroe del rendimiento de la página, mientras que todos los paquetes desempeñan un papel vital en el desarrollo y el rendimiento de la construcción.
Solicitamos amablemente a todos los contribuyentes y miembros del equipo que sigan nuestro Código de conducta. Piensa en ello como el libro de reglas de oro de nuestra comunidad: ¡juega bien y mantén fluyendo el buen rollo!
Este proyecto es de código abierto bajo la licencia AGPL-3.0 . Para conocer todos los detalles esenciales, consulte el archivo LICENCIA. ¡Es un verdadero cambio de página!
Nosotros ? ¡Tú a la luna y de regreso! Su apoyo es como un suministro interminable de café para nuestro código. ¡Gracias por hacer de Hey el lugar más maravilloso del universo!
?