goon/site/README.md
goon-foss bb1b502e9a docs(site): strona goon-foss.org do repo + aktualizacja o nowosci
Strona istniala WYLACZNIE na serwerze (wolumen infisical-caddy), a cala
historia to byly kopie index.html.bak-* obok pliku. Wjezdza do repo.

Tresc zaktualizowana o to, czego strona nie mowila:
- filmy (45k) w ogole nie byly wspomniane, mimo osobnej zakladki
- "30+ public tubes" -> 46 realnych zrodel
- pasek liczb w hero (3.8M scen, 108k performerow, 45k filmow, 46 zrodel)
- zakladki: scenes/movies/sites/JAV zamiast samego grida scen
- sekcja "What's new": animacja i 3D, filmy, JAV we wlasnej zakladce

Makiety w sekcji "In the app" zastapione prawdziwymi zrzutami (byl tam
komentarz zeby to zrobic po wgraniu realnych screenow). Miniaturki scen
sa na nich rozmyte. Przy okazji -100 linii martwego CSS-u makiet.
2026-08-13 09:54:25 +02:00

35 lines
1.3 KiB
Markdown

# goon-foss.org
Statyczna strona domowa (jeden plik, Tailwind z CDN, bez builda).
**Do 2026-08-13 istniała WYŁĄCZNIE na serwerze**, a jedyną historią były kopie
`index.html.bak-*` leżące obok. Stąd ten katalog: zmiany idą przez repo, kopia
zapasowa na serwerze zostaje jako awaryjne cofnięcie, nie jako historia.
## Deploy
Serwuje ją `infisical-caddy` z wolumenu, NIE z kontenerów Goona:
```
D=/var/lib/docker/volumes/infisical_caddy-data/_data/goon-foss
ssh <vps> "cp $D/index.html $D/index.html.bak-$(date +%Y%m%d-%H%M%S)"
scp site/index.html <vps>:$D/index.html
```
Bez restartu, Caddy czyta plik z dysku przy każdym żądaniu.
## Zawartość katalogu na serwerze
- `index.html` — ta strona
- `goon-v*.apk` — buildy do pobrania (link w hero i w stopce wskazuje najnowszy)
- `logo.png`, `favicon.png`
- `shots/` — zrzuty z apki do sekcji „In the app", kopiowane z
`app/static/marketing/`. Miniaturki scen są na nich rozmyte, bo strona jest publiczna.
## Uwaga przy aktualizacji liczb
Liczby w hero (sceny/performerzy/filmy/źródła) są wpisane na sztywno. Świeże:
```
docker compose exec -T db psql -U goon -d goon -c "SELECT (SELECT count(*) FROM scenes), (SELECT count(*) FROM performers), (SELECT count(*) FROM movies), (SELECT count(DISTINCT origin) FROM playback_sources);"
```