Kami memanfaatkan kekuatan ruang kerja pnpm untuk menjaga monorepo kami berjalan lebih lancar dibandingkan pancake yang baru diolesi mentega.
Kloning Hey monorepo ke mesin lokal Anda:
git clone [email protected]:/repos/hey/hey.git
Mengguncang MacOS? Anda bisa mendapatkan keduanya dengan Homebrew, seperti ahli pembuatan bir sejati:
brew install nvm pnpm
Gunakan nvm
untuk memanggil versi ajaib Node.js yang Anda perlukan:
nvm install
Teleportasikan diri Anda ke root repositori dan biarkan pnpm memercikkan keajaiban ketergantungannya:
pnpm install
.env
Salurkan wizard batin Anda dan buat file .env
dari template .env.example
untuk setiap paket dan aplikasi yang membutuhkannya. Jangan lupa untuk menambahkan variabel lingkungan yang diperlukan!
cp .env.example .env
Jangan lupa untuk memainkan peniru dan ulangi pembuatan file .env
ini untuk setiap paket dan aplikasi yang membutuhkannya. Konsistensi adalah kuncinya!
Ketika semua bintang sejajar dan semuanya sudah siap, jalankan aplikasi dalam mode pengembangan:
pnpm dev
Siap untuk membangun aplikasi? Jalankan saja perintah ini:
pnpm build
Ingin menjalankan pengujian saat Anda sedang mengembangkan? Inilah cara Anda melakukannya:
pnpm test
Kami menggunakan ts-prune
untuk memburu dan menghilangkan ekspor dan pembantu yang tidak terpakai yang bersembunyi di basis kode kami. Sekadar peringatan: Anda harus menjalankan tugas ini secara manual untuk setiap paket dan aplikasi. Selamat memangkas!
cd apps/web ; npx ts-prune -i generated.ts
Saatnya merombak dependensi kita! Kami mengandalkan kekuatan magis pnpm
untuk menjaga semuanya tetap terkini dan terlihat tajam.
script/clean-branches
script/update-dependencies
Kami mempercayai pnpm
untuk menjaga file kunci kami tetap segar dan menakjubkan!
script/clean-branches
script/update-lock-file
Kami menggunakan Ripgrep untuk mencari teks di basis kode. Ini seperti grep
dan ag
punya bayi, dan bayi itu tumbuh menjadi iblis kecepatan!
Instal melalui Homebrew:
brew install ripgrep
Cari teks di basis kode:
rg " const Verified "
Di apps/web
, kami memiliki penganalisis paket yang memberikan informasi tentang ukuran dan konten paket produksi kami. Ini seperti memiliki penglihatan sinar-X untuk kode Anda!
Untuk menghasilkan output ini, jalankan:
cd apps/web
ANALYZE=true pnpm build
Jalankan perintah ini untuk membangun proyek apps/web
dan saksikan tiga jendela browser terbuka secara ajaib, masing-masing menampilkan detail bundel untuk node, edge, dan bundel klien. Paket klien adalah pahlawan super untuk kinerja halaman, sementara semua paket memainkan peran penting dalam pengembangan dan membangun kinerja.
Kami dengan hormat meminta semua kontributor dan anggota tim untuk mengikuti Kode Etik kami. Anggap saja ini sebagai buku peraturan emas komunitas kami - bermainlah dengan baik dan pertahankan semangat yang baik!
Proyek ini bersumber terbuka di bawah lisensi AGPL-3.0 . Untuk semua detail seluk beluknya, lihat file LISENSI. Ini benar-benar pembalik halaman!
Kami ? kamu ke bulan dan kembali! Dukungan Anda seperti persediaan kopi yang tiada habisnya untuk kode kita. Terima kasih telah menjadikan Hey tempat paling mengagumkan di alam semesta!
?