Phase 29: SvelteKit Convention + Capacitor SOP Stages 5-6
Goal: Codify the SvelteKit-on-Pal-E paradigm as a single convention note, and expand the Capacitor SOP with iOS + App Store stages.
Owner: Betty Sue (documentation, no code)
Repo: pal-e-docs (knowledge, no code)
Depends on: None (can start immediately)
Scope
Deliverable 1: convention-sveltekit-spa
Unified "SvelteKit on Pal-E" convention note:
- Stack: adapter-static + keycloak-js + PKCE
- Auth: Public client, in-memory tokens, Capacitor platform detection
- CSS: Global app.css from playground, no scoped styles, design tokens only
- Data fetching: Client-side fetch() with Bearer token, no +page.server.ts
- Routing: Role-based redirect in +layout.svelte, public routes allowlist
- API:
import.meta.env.VITE_API_URLwith production fallback
Also fills the empty
sveltekit-spa-configuration section on project-capacitor-mobile.Deliverable 2: Capacitor SOP Stages 5-6
- Stage 5: iOS Build Pipeline — cap init, cap add ios, Xcode project, Fastlane match signing, Mac Woodpecker agent. Gate 4: TestFlight build installs on phone.
- Stage 6: App Store Submission — App Store Connect, assets, Fastlane deliver, Apple review. Gate 5: App Store approval.
Notes to Create/Update
- Create:
convention-sveltekit-spa - Update:
project-capacitor-mobile(fill sveltekit-spa-configuration) - Update:
sop-capacitor-mobile-lifecycle(add stages 5-6)