> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kazzle.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Budowanie i publikowanie

> Budowanie aplikacji za pomocą AI, iteracja na żywo i wdrażanie do produkcji.

## Tworzenie aplikacji

Dwa sposoby:

* **Poproś AI** - opisz, co chcesz w wątku, a AI to zbuduje
* **Przycisk Nowa aplikacja** - kliknij **+** na pasku bocznym Drive i wybierz **Nowa aplikacja**

AI wybiera szablon startowy na podstawie Twojego opisu:

| Szablon   | Co otrzymujesz              | Użyj gdy potrzebujesz                                    |
| --------- | --------------------------- | -------------------------------------------------------- |
| `ui`      | Aplikacja internetowa React | Aplikacja internetowa, pulpit nawigacyjny, strona główna |
| `process` | Serwer HTTP                 | API, obsługę webhooka, zadanie zaplanowane               |

## Jedna aplikacja, jedna gałąź

Każda aplikacja to pojedyncze pobranie git na `main`. Brak oddzielnych szkiców, brak przełączania gałęzi, brak kroku scalania. Każda edycja trafia na `main` jako commit; publikowanie to po prostu „wdrażanie bieżącego `main`".

## Cykl budowania

1. AI pisze kod bezpośrednio na `main`
2. AI uruchamia serwer deweloperski. Widzisz podgląd na żywo.
3. Iterujesz przez czat: „przenieś wykres na pasek boczny", „dodaj ciemny motyw"
4. Serwer deweloperski przeładowuje się na gorąco po każdej edycji
5. Gdy gotowe, opublikuj

## Publikowanie

Publikowanie wdraża bieżący commit `main`. Brak oddzielnej gałęzi produkcji — ostatnio opublikowany commit na `main` to to, co jest na żywo.

Gdy publikujesz w katalogu, aby inni mogli zainstalować, Twoja aplikacja otrzymuje token tożsamości użytkownika przy uruchomieniu, klucz instalacji dla swojego backendu oraz webhooki instalacji/odinstalowania. Zobacz [Publikowanie](/apps/publishing).

## Buforowanie, aktualizacje i tryb offline

Pulpit i urządzenia mobilne otwierają adres URL Twojej aplikacji tylko w normalnym widoku przeglądarki. **Nie** czyszczą pamięci podręcznej przeglądarki, nie wymuszają ładowania tylko z sieci ani nie wybierają innej polityki buforowania dla aplikacji publicznych i prywatnych.

Twoja aplikacja internetowa zarządza buforowaniem:

* Nagłówki HTTP `Cache-Control` dla dokumentów i zasobów
* Opcjonalna konfiguracja service workera / PWA (szablony zawierają `vite-plugin-pwa` z automatyczną aktualizacją)
* Czy nowa kompilacja aktywuje się natychmiast, przeładowuje się raz czy czeka na następne otwarcie
* Rezerwowe rozwiązanie offline dla ostatniej aktywowanej kompilacji

Gdy Kazzle widzi nową opublikowaną wersję dla otwartej karty aplikacji, prosi zarejestrowany service worker o sprawdzenie aktualizacji (`registration.update()`). Aplikacje bez service workera ignorują to sprawdzenie i nadal używają swoich nagłówków pamięci podręcznej HTTP.

Opublikowane aplikacje mogą zatem otwierać się natychmiast z pamięci podręcznej, pobierać nową kompilację bez twardego odświeżenia i utrzymywać najnowszą kompilację dostępną offline.

## Wdrażanie

Po publikowaniu wdróż, aby uzyskać aktywny adres URL:

* **Aplikacje zdalne** wdrażają się w chmurze Kazzle i otrzymują publiczny adres URL
* **Aplikacje lokalne** instalują się na Twoim komputerze. Interfejs ładuje się bezpośrednio, a część procesu uruchamia serwer deweloperski.

## Aplikacje w czasie rzeczywistym

Dla aplikacji wymagających natychmiastowych odczytów lokalnych i obsługi offline, AI:

1. Tworzy bazę danych
2. Włącza synchronizację w czasie rzeczywistym
3. Buduje aplikację dwuczęściową: UI (React + klient synchronizacji) i Process (punkt końcowy tokenu + przesyłanie synchronizacji)
4. Podłącza poświadczenia przez [vault](/work/vault)

Zobacz [Synchronizacja w czasie rzeczywistym](/apps/sync), aby dowiedzieć się, jak to działa.

## Strony główne

Strony główne to aplikacje tylko UI. Brak backendu, brak bazy danych. Opisz stronę, a AI ją zbuduje, wdroży i da Ci aktywny adres URL. Aby użyć domeny niestandardowej, wskaż swoją domenę lub poddomenę na wdrożony adres URL aplikacji.
