Muat dan Uji Secara Lokal
Muat presence yang dibina ke dalam sambungan Nowly dengan pakej dev pra-bina atau seretan zip.
Selepas nowly build <slug>, anda masih perlu membawa bundle tersebut ke pelayar. Terdapat dua kaedah pemuatan lokal. Kedua-duanya tidak berhubung dengan Nowly API.
1. Sambungan pra-bina (nowly extension)
Ini ialah laluan biasa untuk kali pertama. CLI memuat turun binaan pembangunan Chrome atau Firefox dan membakar presence yang telah dikompil ke dalamnya.
nowly build youtube
nowly extension youtube # Chrome (lalai)
nowly extension youtube --firefox
nowly extension youtube --f # Alias FirefoxAnda boleh hantar beberapa slug:
nowly extension youtube github figma --firefoxPilihan pelayar tidak boleh digunakan bersama. Gunakan --chrome / --c untuk memilih Chrome secara jelas.
Kemudian:
- Chrome: Buka
chrome://extensions, hidupkan Mod pembangun, kemudian pilih Muat tanpa pek →dist/extension-dev - Firefox: Buka
about:debugging#/runtime/this-firefox, pilih This Firefox, klik Load Temporary Add-on..., kemudian pilihdist/extension-dev-firefox/manifest.json
Presence dipasang daripada dev-presences.json apabila sambungan bermula. Selepas mengubah kod, bina semula, jalankan nowly extension <slug> sekali lagi dan muat semula sambungan.
Untuk menggunakan binaan tempatan dan bukannya zip CDN:
nowly extension youtube --chrome --from ../nowly/apps/extension/dist/chrome
nowly extension youtube --firefox --from ../nowly/apps/extension/dist/firefoxnowly extension menulis folder tanpa zip. Gunakannya apabila Nowly belum dimuatkan dalam pelayar.
Repositori monorepo penuh Nowly
Jika anda menyalin nowly dan menjalankan pnpm repos (yang menyalin presences ke dalam packages/presences), anda boleh membakar setiap presence yang dibina ke dalam sambungan:
nowly build youtube
pnpm build:extension:dev --bundledMuat apps/extension/dist/chrome tanpa zip. Muat semula selepas setiap binaan semula.
2. Seretan zip (nowly pack)
Gunakan ini apabila Nowly sudah dimuatkan sebagai build pembangunan tanpa zip. Pemasangan kedai Chrome Web Store menolak zip tanpa tandatangan. Anda hanya membina semula presence, bukan keseluruhan sambungan.
nowly pack youtubeArahan itu membina presence, kemudian memampatkan dist/presences/youtube/ ke dalam dist/packs/youtube.zip. Zip mesti mengandungi sekurang-kurangnya metadata.json dan bundle.js. Folder bersarang tidak menjadi masalah.
Kemudian dalam panel sisi:
- Buka Tetapan → Lanjutan
- Aktifkan Mod pembangun (sentiasa aktif untuk build tanpa zip)
- Kembangkan Debug
- Seret
.zip(atau semak imbas ke arahnya)
Presence dipasang sebagai sumber lokal. Pemangkasan semasa but untuk build tanpa zip tidak mengeluarkannya. Zip tanpa tandatangan diterima hanya pada build tanpa zip (Load unpacked). Suis mod pembangun dalam tetapan hanya memaparkan UI Debug; ia tidak membenarkan pemasangan zip pada build kedai. Build kedai masih memerlukan keluaran bertandatangan daripada API.
Selepas setiap perubahan kod:
nowly pack youtubeSeret zip baru sekali lagi. Anda tidak perlu memuat semula sambungan tanpa zip melainkan anda menukar sambungan itu sendiri.
Kaedah mana untuk dipilih
| Situasi | Kaedah |
|---|---|
| Persediaan pertama, atau tiada Nowly dalam pelayar | nowly extension <slug> |
| Nowly sudah dimuatkan, ulang pada satu presence | nowly pack <slug> kemudian seret zip |
| Anda bekerja dalam monorepo nowly penuh | pnpm build:extension:dev --bundled |
Lihat juga CLI.