Starter Kit für SPAs mit Svelte und TibiCMS inkl. SSR
Go to file Use this template
2022-10-11 14:10:53 +00:00
.vscode yarn upgrade 2022-09-15 16:02:24 +00:00
.yarn yarn upgrade 2022-10-11 14:10:53 +00:00
api Doppelter Aufruf für das Holen der Page-Contents nach Sprachwechsel gefixed. 2022-07-12 08:45:38 +02:00
cypress cypress tsconfig.json fix 2022-02-26 17:43:34 +01:00
public Starter Projekt angefangen, etwas aufzubohren und ein paar grundlegend benötigte Collections, Teheming-Styles und Komponenten hinzugefügt. (WIP) 2022-05-24 16:44:55 +02:00
scripts yarn upgrade 2022-10-11 14:10:53 +00:00
src Doppelter Aufruf für das Holen der Page-Contents nach Sprachwechsel gefixed. 2022-07-12 08:45:38 +02:00
types Doppelter Aufruf für das Holen der Page-Contents nach Sprachwechsel gefixed. 2022-07-12 08:45:38 +02:00
.basic-auth-code docker:start 2022-09-15 15:56:54 +00:00
.basic-auth-web docker:start 2022-09-15 15:56:54 +00:00
.drone.yml renamed to tibi-svelte-starter 2022-02-26 11:09:53 +01:00
.env yarn upgrade 2022-10-11 14:10:53 +00:00
.gitattributes yarn 2, package upgrade 2022-04-26 11:14:37 +02:00
.gitignore docker:start 2022-09-15 15:56:54 +00:00
.prettierrc Collections für neue Projekte optimiert...work in progress... 2022-03-18 21:33:01 +01:00
.yarnrc.yml yarn upgrade 2022-10-11 14:10:53 +00:00
babel.config.cypress.json sourcemap tests 2021-09-13 18:12:40 +02:00
babel.config.json init 2021-03-22 15:59:05 +01:00
cypress.json renamed to tibi-svelte-starter 2022-02-26 11:09:53 +01:00
docker-compose-local.yml yarn upgrade 2022-10-11 14:10:53 +00:00
docker-compose.cypress.yml fixed cy:docker: 2022-02-26 11:39:25 +01:00
esbuild.config.cypress.js sourcemap tests 2021-09-13 18:12:40 +02:00
esbuild.config.js Erste kleine Anpassungen am Tibi-Svelte-Starter um später mehr Zeit in neuen Projekten zu sparen. Hier werden noch weitere Anpassungen folgen, die grundlegend in den meisten Projekten benötigt werden. 2022-03-17 11:12:06 +01:00
esbuild.config.legacy.js init 2021-03-22 15:59:05 +01:00
esbuild.config.server.js yarn 2, package upgrade 2022-04-26 11:14:37 +02:00
LICENSE Initial commit 2021-03-22 13:24:57 +01:00
Makefile yarn upgrade 2022-10-11 14:10:53 +00:00
package.json yarn upgrade 2022-10-11 14:10:53 +00:00
README.md yarn upgrade 2022-10-11 14:10:53 +00:00
svelte.config.js sourcemap tests 2021-09-13 18:12:40 +02:00
tsconfig.json renamed to tibi-svelte-starter 2022-02-26 11:09:53 +01:00
yarn.lock yarn upgrade 2022-10-11 14:10:53 +00:00

tibi-starter

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

Wozu?

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

Die Navigation innerhalb der APP im Browser löst dagegen nur API-Aufrufe aus ohne jedesmal einen SSR-Prozess anzustoßen.

Um die SSR-Last so gering wie möglich zu halten, wurde ein Caching in der "ssr"-Collection der API implementiert.

Toolchain

git

nach git clone ...

git lfs install
git lfs pull

Abhängigkeiten laden

yarn install

Entwickeln mit dev-Webserver

yarn start

oder mit abweichender API für "/api"-Proxy

API_BASE=https://login.tibicms.de/api/v1_/__NAMESPACE__ yarn start

Entwickeln mit externem Webserver (z.B. vscode live server)

yarn dev

Entwickeln auf dem Code-Server mit Docker Compose Stack

make docker-start
# oder
make docker-up
make docker-down

# "make help" zeigt alle Kommandos
UI URL
Website https://tibi-svelte-starter.code.testversion.online/
Tibi Admin https://tibi-svelte-starter-tibiadmin.code.testversion.online/
Admin Mongo https://tibi-svelte-starter-adminmongo.code.testversion.online/
Maildev https://tibi-svelte-starter-maildev.code.testversion.online/

Testen

yarn build:istanbul # instrumentiert Code für coverage-Report
yarn cy:docker:run  # oder mit Xserver und UI cy:docker:open

Bauen

# moderne Browser
yarn build

# alte Browser (IE11)
yarn build:legacy

# serverseitiges Rendering
yarn build:server