Command Palette

Search for a command to run...

Φόρτωση και τοπική δοκιμή

Φορτώστε μια έτοιμη presence στην επέκταση Nowly με ένα προκατασκευασμένο dev πακέτο ή με απόθεση zip.

Μετά την εντολή nowly build <slug>, πρέπει ακόμα να μεταφέρετε το bundle σε ένα πρόγραμμα περιήγησης. Υπάρχουν δύο τοπικές μέθοδοι φόρτωσης. Καμία δεν επικοινωνεί με το Nowly API.

1. Προκατασκευασμένη επέκταση (nowly extension)

Αυτή είναι η συνήθης διαδρομή για την πρώτη φορά. Η CLI κατεβάζει ένα έτοιμο dev build Chrome ή Firefox και ενσωματώνει τη μεταγλωττισμένη presence.

nowly build youtube
nowly extension youtube             # Chrome (προεπιλογή)
nowly extension youtube --firefox
nowly extension youtube --f         # Ψευδώνυμο Firefox

Μπορείτε να περάσετε πολλά slugs:

nowly extension youtube github figma --firefox

Οι επιλογές browser είναι αμοιβαία αποκλειόμενες. Χρησιμοποιήστε --chrome / --c για ρητή επιλογή Chrome.

Στη συνέχεια:

  • Chrome: Ανοίξτε chrome://extensions, ενεργοποιήστε τη Λειτουργία προγραμματιστή και επιλέξτε Φόρτωση ασυσκεύαστου → dist/extension-dev
  • Firefox: Ανοίξτε about:debugging#/runtime/this-firefox, επιλέξτε This Firefox, πατήστε Load Temporary Add-on... και επιλέξτε dist/extension-dev-firefox/manifest.json

Η presence εγκαθίσταται από το dev-presences.json κατά την εκκίνηση. Μετά από αλλαγή, κάντε rebuild, εκτελέστε ξανά nowly extension <slug> και φορτώστε ξανά την επέκταση.

Για τοπικό build αντί για το CDN:

nowly extension youtube --chrome --from ../nowly/apps/extension/dist/chrome
nowly extension youtube --firefox --from ../nowly/apps/extension/dist/firefox

Η εντολή nowly extension γράφει έναν αποσυμπιεσμένο φάκελο. Είναι το σωστό εργαλείο όταν δεν έχετε ήδη φορτώσει το Nowly.

Πλήρες monorepo του Nowly

Αν κλωνοποιήσατε το nowly και εκτελέσατε pnpm repos (που κλωνοποιεί το presences στο packages/presences), μπορείτε να ενσωματώσετε κάθε built presence στην επέκταση:

nowly build youtube
pnpm build:extension:dev --bundled

Φορτώστε το apps/extension/dist/chrome αποσυμπιεσμένο. Κάνετε reload μετά από κάθε rebuild.

2. Απόθεση zip (nowly pack)

Χρησιμοποιήστε το όταν το Nowly είναι ήδη φορτωμένο ως αποσυμπιεσμένο dev build. Οι εγκαταστάσεις από το Chrome Web Store απορρίπτουν τα μη υπογεγραμμένα zip. Κάνετε rebuild μόνο της presence, όχι ολόκληρης της επέκτασης.

nowly pack youtube

Αυτή η εντολή φτιάχνει την presence και στη συνέχεια συμπιέζει το dist/presences/youtube/ σε dist/packs/youtube.zip. Το zip πρέπει να περιέχει τουλάχιστον metadata.json και bundle.js. Οι ένθετοι φάκελοι δεν αποτελούν πρόβλημα.

Στη συνέχεια, στο side panel:

  1. Ανοίξτε Ρυθμίσεις → Για προχωρημένους
  2. Ενεργοποιήστε τη Λειτουργία προγραμματιστή (πάντα ενεργή για τα αποσυμπιεσμένα builds)
  3. Αναπτύξτε το Debug
  4. Αποθέστε το .zip (ή περιηγηθείτε σε αυτό)

Η presence εγκαθίσταται ως τοπική πηγή. Το εκκαθαριστικό boot pruning των αποσυμπιεσμένων builds δεν την αφαιρεί. Τα μη υπογεγραμμένα zip γίνονται αποδεκτά μόνο σε αποσυμπιεσμένο build (Load unpacked). Ο διακόπτης developer mode στις ρυθμίσεις εμφανίζει μόνο το UI Debug· δεν επιτρέπει εγκατάσταση zip σε store build. Τα store builds εξακολουθούν να απαιτούν υπογεγραμμένο release από το API.

Μετά από κάθε αλλαγή κώδικα:

nowly pack youtube

Αποθέστε ξανά το νέο zip. Δεν χρειάζεται να κάνετε reload της αποσυμπιεσμένης επέκτασης εκτός αν αλλάξατε την ίδια την επέκταση.

Ποια μέθοδο να επιλέξετε

| Κατάσταση | Μέθοδος | |---|---| | Πρώτη εγκατάσταση ή κανένα Nowly στο πρόγραμμα περιήγησης | nowly extension <slug> | | Το Nowly είναι ήδη φορτωμένο, επαναλαμβάνετε σε μία presence | nowly pack <slug> και μετά απόθεση του zip | | Εργάζεστε στο πλήρες nowly monorepo | pnpm build:extension:dev --bundled |

Δείτε επίσης CLI.