Komponenty
Komponenty to wykonywalne części Twojej aplikacji. Każdy komponent matype, który określa sposób jego uruchomienia.
Komponenty interfejsu użytkownika
Komponent interfejsu użytkownika to frontend internetowy — React, Vue, Svelte, zwykły HTML lub dowolny framework działający na porcie.- Maksymalnie 1 na aplikację — Kazzle przypisuje jeden adres URL podglądu na aplikację
runtime.dev— polecenie dla serwera deweloperskiego (używane przez “Uruchom podgląd”)runtime.run— polecenie do uruchomienia produkcyjnej kompilacji
runtime.dev nie jest ustawiony, system podglądu uruchamia bun run dev z Twojego package.json.
Komponenty procesów
Komponent procesu to usługa backend, worker lub zaplanowane zadanie.Cykl życia: processMode
Komponent procesu ma jeden z dwóch cykli życia:
processMode: 'persistent'(domyślnie) — długotrwały serwer HTTP. Wyzwalacze są wysyłane POST do uruchomionego serwera na zadeklarowanejpath.processMode: 'triggered'— skrypt wejściowy jest uruchamiany dla każdego wyzwalacza i kończy się. Brak bezczynnych maszyn w produkcji.
Wyzwalacze
Wyzwalacze harmonogramu i webhook są deklarowane na komponencie. Jeden komponent może mieć wiele wyzwalaczy. Każdy wyzwalacz maname (unikatową w obrębie komponentu) i kind.
path jest wymagana dla processMode: 'persistent'. Dla processMode: 'triggered' jest pominięta — skrypt odczytuje TRIGGER_NAME ze zmiennych środowiskowych.
Zapoznaj się z Automatyzacją, aby poznać pełny model wyzwalaczy, umowę zmiennych środowiskowych i nagłówek uwierzytelniania HTTP.
Polecenia runtime
| Faza | Kiedy się uruchamia | Przykład |
|---|---|---|
dev | Podczas podglądu roboczego | bun run dev, vite, next dev |
run | W produkcji | bun run start, node dist/server.js |
kazzle run -- <command>, aby Kazzle mogła wstrzyknąć lokalne porty i adresy URL komponentów równorzędnych. Produkcyjne komponenty procesów muszą deklarować rzeczywiste polecenie w runtime.run, ponieważ wdrożenie uruchamia to polecenie w obrazie produkcyjnym.