Skip to main content

Componenten

Componenten zijn de uitvoerbare onderdelen van je app. Elke component heeft een type dat bepaalt hoe deze wordt uitgevoerd.

UI-componenten

Een UI-component is een webfrontend — React, Vue, Svelte, plain HTML, of elk framework dat op een poort draait.
  • Max 1 per app — Kazzle wijst één preview-URL per app toe
  • runtime.dev.command — commando voor de dev-server (gebruikt door “Start preview”)
  • runtime.prod.build — commando om de productie-image te bouwen
  • runtime.prod.command — commando om een productie-procescomponent te starten
Als runtime.dev.command niet is ingesteld, voert het preview-systeem bun run dev uit vanuit je package.json.

Procescomponenten

Een procescomponent is een backend-service, worker of geplande taak.

Levenscyclus: processMode

Een procescomponent heeft een van twee levenscycli:
  • processMode: 'persistent' (standaard) — langlopende HTTP-server. Triggers worden in de draaiende server geplaatst op het aangegeven path.
  • processMode: 'triggered' — het invoerscript wordt per trigger gestart en afgesloten. Geen inactieve machines in productie.

Triggers

Schema- en webhook-triggers worden op de component aangegeven. Eén component kan veel triggers hebben. Elke trigger heeft een name (uniek binnen de component) en een kind.
path is vereist voor processMode: 'persistent'. Voor processMode: 'triggered' wordt het weggelaten — het script leest TRIGGER_NAME uit de omgeving. Zie Automations voor het volledige trigger-model, env-var-contract en HTTP-authenticatieheader.

Runtime-commando’s

Draft-preview-packagescripts kunnen kazzle run -- <command> gebruiken zodat Kazzle lokale poorten en URL’s van sibling-componenten kan injecteren. Productie-procescomponenten moeten het echte commando in runtime.prod.command aangeven omdat deploy dat commando in de productie-image uitvoert.