# Migration: PhyProof-Patterns → Starter-Template > Übernahme generischer Patterns aus `wm-phytolab/phyproof-shop-tibi-2025` in `cms/tibi-svelte-starter`. **Erstellt:** 2026-02-25 **Quelle:** `/WM_Dev/src/gitbase.de/wm-phytolab/phyproof-shop-tibi-2025` --- ## Pakete & Reihenfolge | # | Paket | Status | Abhängig von | Dateien | |---|-------|--------|-------------|---------| | 1 | [Foundation](paket-1-foundation.md) | ✅ | — | requestsStore, serverBuildInfo, formContext, clickOutside, utils, store, types | | 2 | [Build-System](paket-2-build-system.md) | ✅ | Paket 1 | writeBuildInfo, esbuild-wrapper, ES-targets, Sentry tunnel, SPA-rewrites, versionCheck | | 3 | [Toast + Loading](paket-3-toast-loading.md) | ⬜ | Paket 1 | toast.ts, ToastContainer, LoadingBar, Portal | | 4 | [API-Layer](paket-4-api-layer.md) | ⬜ | 1, 2, 3 | api.ts Rewrite (fetch, dedup, loading, version-check) | | 5 | [SSR Caching](paket-5-ssr-caching.md) | ⬜ | — | ssr.yml, ssr-server.js, utils.js, clear_cache.js, get_read.js | | 6 | [Widgets + Nav](paket-6-widgets-navigation.md) | ⬜ | 1, 3, 4 | Button, Form, Input, Select, SearchableSelect, MedialibImage, Pagination, Carousel, Tooltip, DebugFooterInfo, navigation.ts | **Hinweis:** Paket 5 (SSR) ist Backend-only und kann parallel zu den Frontend-Paketen umgesetzt werden. --- ## Parallelisierung ``` Paket 1 (Foundation) ──→ Paket 2 (Build) ──→ Paket 4 (API) ──→ Paket 6 (Widgets) └──→ Paket 3 (Toast) ──┘ Paket 5 (SSR) ────────── (unabhängig, jederzeit) ──────────────┘ ``` --- ## Bewusst nicht übernommen | Feature | Grund | |---------|-------| | `auth.ts` | Zu komplex als Default — pro Projekt entscheiden | | Pagebuilder | Block-Registry ist immer projektspezifisch | | Video Tours | Nischig — als separates Tool | | i18n-Erweiterungen | Sprachsetup-abhängig | | `validators.ts` | Passwort-Stärke zu spezifisch | | Shop-Widgets | Cart, Filter, Pricing usw. | | `@tailwindcss/typography` | Dependency nur bei Bedarf | | `navigationData.ts` | CMS-Navigation braucht Collection-Setup | | `CookieConsent.svelte` | GA-ID hardcoded, GDPR-Setup projektspezifisch |