Project Structure
A peek under the hood at the Nuxfire monorepo codebase.
Nuxfire is a Bun workspace monorepo (apps/*, packages/*, layers/*), all under the @nuxfire/* namespace. apps/ holds everything with its own deploy; packages/ holds shared libraries with no deploy of their own; layers/ holds pluggable business-domain Nuxt Layers, each one extended into apps/app and toggled on/off in root config.ts.
apps/app— the Composition Root: the app shell (dashboard layout, account settings, the tRPC composition), extending every active layer. Business logic itself — team management, billing, notifications, the platform admin console — lives inlayers/, not here.apps/web— the public site: landing page, blog, and this documentation, built with Nuxt Content.apps/login— the login/signup/forgot-password UI, built statically and served as the auth Worker's static assets.apps/functions— Cloudflare Workers code that isn't the main app: the OpenAuth auth issuer, the email Worker, the WebSockets Worker, the job/dead-letter queue consumers, and the hourly Cron Worker. Also home todatabase/— the Drizzle schema aggregator, migrations, and seed scripts.layers/teams,layers/billing,layers/notifications,layers/admin— the core business domains (multi-tenancy/RBAC, subscriptions, notifications, the platform admin console), each a self-contained Nuxt Layer with its own pages, components, tRPC router and database schema slice.layers/kanban— an example optional feature layer, toggleable independently of the four core ones.packages/emails—packages/emails/templates, email templates built with React Email, pluspackages/emails/mailer, the provider-agnostic send engine (a vendored fork of AdonisJS Mail) — see Emails.packages/tokens—@nuxfire/tokens, the single source of truth for theming (brand colors, corner radius, dark-mode surface mapping, Nuxt UI component overrides), consumed by every app and layer alike — see Design System & Branding.packages/manifest—@nuxfire/manifest, the shareddefineLayerManifest()contract every layer'slayer.manifest.tsuses.
Everything outside apps/, packages/ and layers/ that isn't application code is infrastructure: infra/*.ts defines every Cloudflare resource as SST — see SST.dev for how those files load and what a stage is.
Folder Structure
Ready to build and launch your SaaS?
Get 100% full source code ownership, zero proprietary wrappers, and architecture engineered for millions of requests on Cloudflare.