apairon 958b45272d feat: enhance admin UI configuration and SSR handling
- Add support for number chip arrays and JSON editor in admin UI config.
- Introduce pagebuilder block registry for Svelte components in admin previews.
- Implement custom role names and a 3-layer cascade model for field-level permissions.
- Add CORS configuration hierarchy for better API security.
- Update project setup instructions for admin token and config management.
- Improve SSR 404 signaling with proper context handling in NotFound component.
- Refactor routing structure to separate NotFound page into its own route.
2026-05-12 23:20:31 +00:00
2022-09-15 15:56:54 +00:00
2022-09-15 15:56:54 +00:00
2022-04-26 11:14:37 +02:00
2025-03-27 13:26:28 +00:00
2021-03-22 13:24:57 +01:00

tibi-starter

Starter Kit für SPAs(s) ;) mit Svelte und TibiCMS inkl. SSR

Neues Projekt aufsetzen? → Skill .agents/skills/tibi-project-setup/SKILL.md

Setup-Checkliste

[ ] Repository geklont und Remotes konfiguriert
[ ] __PROJECT_NAME__ in .env ersetzt (kebab-case)
[ ] __TIBI_NAMESPACE__ in .env ersetzt (snake_case)
[ ] __TIBI_NAMESPACE__ in api/config.yml und frontend/.htaccess ersetzt
[ ] Keine verbleibenden __*__-Platzhalter (mit grep prüfen)
[ ] App.svelte hat <svelte:head> mit <title>
[ ] ADMIN_TOKEN in api/config.yml.env gesetzt
[ ] yarn install && yarn upgrade ausgeführt
[ ] make docker-up gestartet
[ ] Website erreichbar unter https://{PROJECT_NAME}.code.testversion.online/
[ ] yarn validate zeigt 0 Fehler und 0 Warnungen
[ ] yarn build und yarn build:server erfolgreich

Architektur

Via Svelte wird eine SPA (Single-Page-App) programmiert. Der Code wird einmal für den Browser aufbereitet und außerdem für den Server kompiliert und transpiliert. Der Server-Code wird in einem tibi-server SSR-Hook eingebunden und generiert fertiges HTML anhand der aktuellen Route — für SEO und optimierte Ladezeiten.

Die Navigation innerhalb der App löst nur API-Aufrufe aus, ohne jedes Mal SSR anzustoßen. Ein Cache in der ssr-Collection minimiert die SSR-Last.

SSR-Details:

  • <title> und <meta description> kommen über <svelte:head> aus App.svelte → SSR injiziert sie in den <!--HEAD-->-Platzhalter von spa.html
  • <html lang> wird vom SSR-Hook (api/hooks/ssr/get_read.js) anhand der URL-Sprache gesetzt
  • SSR-Bundle wird mit yarn build:server erstellt und landet in api/hooks/lib/app.server.js

Der normale Frontend-Build yarn build erzeugt sowohl das Frontend-Bundle als auch das Admin-Modul admin.mjs.

S
Description
Starter Kit für SPAs mit Svelte und TibiCMS inkl. SSR
Readme MIT 601 MiB
Languages
TypeScript 46.9%
Svelte 33.1%
JavaScript 13.4%
Shell 3.2%
CSS 1.5%
Other 1.8%