# Prerender static

Generează blogul ca fișiere HTML statice la build. Ideal pentru hosturi
statice (GitHub Pages, S3, nginx simplu) și pentru pipeline-uri CI/CD care
redeploy-ează pe un program.

```
npx baas-blog prerender --key pk_YOUR_KEY --api https://api.dailysmith.com --out ./public/blog
```

Asta scrie:

:::tree

- public/
  - blog/
    - index.html
    - your-first-post-slug/
      - index.html
    - another-post-slug/
      - index.html

:::

Fă deploy la output împreună cu restul site-ului tău, iar blogul devine
complet accesibil crawlerelor, fără nicio dependență la runtime.

## Opțiuni

| Flag | Implicit | Sens |
|---|---|---|
| `--key` | — | Cheia publică a site-ului tău (`pk_…`), obligatorie |
| `--out` | `./public/blog` | Directorul de output |
| `--api` | `https://api.blogsaas.app` | Originea API-ului care servește conținutul tău |
| `--base` | `/blog` | Calea de bază pe care e montat blogul |

:::callout{severity=warning title="Transmite mereu --api explicit"}
Valoarea implicită din CLI indică API-ul de producție găzduit — **nu**
deduce originea instalării tale. Dacă rulezi acest site de documentație
local sau găzduiești singur, un `--api` omis prerandează în tăcere de la
`https://api.blogsaas.app` în loc de `https://api.dailysmith.com`. Transmite mereu
`--api https://api.dailysmith.com` explicit.
:::

## Cum îl ții proaspăt

Output-ul static e un instantaneu (snapshot). Rulează din nou prerender-ul:

- la fiecare deploy, și
- pe un program (ex. un cron CI zilnic), ca articolele programate să apară
  fără un deploy manual.

## Retragerea unui articol

O rulare **șterge** și paginile articolelor care nu mai sunt publicate, deci
un articol retras din dashboard dispare din output-ul static la următorul
prerender. Ștergerea e posibilă doar pentru că CLI-ul ține un manifest cu ce
a scris — `.baas-prerender.json`, în directorul de output — și nu șterge
nimic ce nu a pus el însuși acolo.

Păstrează fișierul acela lângă output între rulări (sau lasă CI-ul să
construiască într-un director curat, unde oricum nu există nimic vechi de
șters). Dacă ștergi manifestul, dar păstrezi HTML-ul, pagina unui articol
retras rămâne pe disc până o ștergi manual.

:::callout{severity=info title="Adaugă și SDK-ul peste el"}
Paginile prerandate funcționează de sine stătător, dar includerea
fragmentului [JS SDK](/ro/docs/install-sdk) în shell-ul paginii face upgrade
la navigare cu încărcări instant, client-side — și arată articolele
publicate de la ultimul deploy încoace.
:::
