Dependencies

Every external service or library the app relies on, why it's here, and what stops working without it.

External services

ServiceUsed forWhat breaks without it
Lovable Cloud (Supabase)Postgres database, Auth (email + Google), Realtime, StorageEverything. The app is a thin client over Supabase — no backend = no data, no login, no votes, no plans.
FirecrawlScrapes AMC Metreon 16 + Kabuki 8 showtime pages from amctheatres.comThe sync endpoint can't refresh data. Existing movies and showtimes still display, but become increasingly stale. AMC RSVPs eventually empty out.
Google OAuth (via Supabase Auth)One-tap sign in / sign upUsers fall back to email + password. No data loss.
Cloudflare Workers (Lovable hosting)Runs SSR + the /api/public server routeSite won't serve. Provided by Lovable hosting — not managed manually.

Core runtime libraries

PackageWhy it's usedWhat breaks
react / react-domRenderingApp doesn't render.
@tanstack/react-router + @tanstack/react-startFile-based routing, SSR shell, server functionsNo routing, no SSR. Equivalent to losing the framework.
@tanstack/react-queryCaching, background refetch, query invalidationAll hooks in src/lib/queries.ts must be rewritten with manual useEffect + setState. Realtime invalidation breaks.
@supabase/supabase-jsPostgres / Auth / Realtime clientCannot read or write any data.
@lovable.dev/cloud-auth-jsLovable Cloud auth helpersSignup / login flows need to be rewritten against raw supabase.auth.
tailwindcss + @tailwindcss/viteStyling via utility classes + design tokens in styles.cssAll styling disappears.
lucide-reactIcon set used across UIIcons stop rendering — replace with another set.
@radix-ui/* + class-variance-authority + clsx + tailwind-mergeFoundations for shadcn/ui primitives in src/components/uiDialogs, sheets, popovers, dropdowns, etc. lose accessibility and behavior.
react-hook-form + @hookform/resolvers + zodForm state + validation in onboarding/login/signupForms fall back to manual state; validation is lost.
date-fnsFormatting showtimes and watch datesDate strings render unformatted.
sonnerToast notifications (vote success, RSVP confirm, errors)User actions become silent — no feedback.
cmdkCommand palette primitive (used in some shadcn components)Affected components lose their search/filter UX.
embla-carousel-react / react-day-picker / input-otp / react-resizable-panels / recharts / vaulBundled with shadcn/ui — used selectively if at allOnly the components that import them are affected.

Build & dev tooling

PackageRole
vite + @cloudflare/vite-pluginDev server and edge-targeted production build
@tanstack/router-pluginGenerates src/routeTree.gen.ts from files in src/routes/
typescriptStrict mode — every import must resolve or build fails
eslint, prettierLint + format

Secrets required

  • FIRECRAWL_API_KEY — for the AMC sync endpoint.
  • Supabase URL and anon key are auto-injected via the Lovable Cloud integration (VITE_SUPABASE_*) and never edited manually.