Zum Inhalt springen

Server / Client

Server / Client

Bundle-Grenzen in Cloudflare-Workers-Apps wie addxion.ai.

In TanStack Start / Vite-SSR können Server-Module (Auth, DB, Node-APIs) versehentlich ins Client-Bundle gelangen. In Cloudflare Workers schlagen TCP-basierte DB-Clients fehl.

  1. Server-only Module mit .server-Suffix benennen (profile.server.ts)
  2. Dynamische Imports in Loaders für Auth- und DB-Code
  3. Kein direkter Import von auth.ts, db/, pg in Client-Komponenten
UmgebungClient
D1 (Auth)Drizzle + D1-Binding AUTH_DB
Neon ohne Hyperdrivedrizzle-orm/neon-http oder @neondatabase/serverless
Neon mit HyperdriveHyperdrive-Binding

postgres.js nutzt TCP — funktioniert nicht in Workers.

bun run lint:server prüft Server-Eintrittspunkte, Effect-Module, Auth/Admin/API-Routes. Für Worker-Änderungen als Gate nutzen, bevor deployt wird.

IDWahrheit
T-PKG-AUTHIdentity-SSOT in @addxion/auth
T-PKG-BEHAVIORScroll-Entscheidungen in behavior, kein DOM
T-REPO-BOUNDARYKlare Repo-Verantwortung pro Inhaltstyp

Scope: Server/Client-Grenzen in ADDXION-Apps.

  • Auth und Secrets serverseitig
  • Shared Packages framework-agnostisch wo vorgesehen (behavior, xi/nav)