Source-checked stack
The technology behind this Bloomineasy install
This project is a Bun-managed Next.js and React content platform with Convex for data, Better Auth for admin sessions, Vercel AI SDK and AI Gateway for structured AI work, and Vercel for production hosting, deployment, and Blob-backed media.
Vercel AI SDK + AI Gateway
AI workflow
Article categorization, taxonomy suggestions, translation, embeddings, and internal-link suggestions use Vercel AI SDK model calls, including generateObject, routed through Vercel AI Gateway. Direct OpenAI remains available only as a temporary fallback.
ai ^6@ai-sdk/openaiAI_GATEWAY_API_KEY
Next.js 16 + React 19
Application shell
The public site runs on the App Router with server components, Convex-backed server reads, Suspense streaming for homepage content, and React components for the admin and public surfaces.
next 16.2.7react 19.2.7Suspense
Convex
Backend data layer
Convex stores content, site settings, taxonomy, widgets, translations, API keys, audit logs, and admin user records. The homepage reads public settings and streamed content through Convex queries.
convex ^1.40fetchQueryNEXT_PUBLIC_CONVEX_URL
Better Auth + Convex
Authentication
The admin area uses Better Auth email/password sessions backed by Convex. Public sign-up is disabled, and admins are created through the bootstrap script or the in-app user manager.
better-authdisableSignUpadmin-only
Vercel + Blob
Deploy and storage
Production deploys through Vercel with a build command that deploys Convex and then runs the Bun production build. Uploaded images are optimized and stored with Vercel Blob when credentials are configured.
vercel.json@vercel/blobbuild:production
Bun
Developer runtime
Bun is the declared package manager and the setup path used by the repo. Local development runs Next with Turbopack on port 5992, and production builds run through Bun after the environment preflight.
bun@1.3.14bun.lockport 5992
TypeScript + Zod
Typed content contracts
TypeScript, generated Convex types, and Zod schemas define the article APIs, widgets, site settings, auth contracts, and tests that keep content operations predictable.
typescript ^6zod ^4Convex generated types
Tailwind CSS + shadcn/ui
Interface system
The public and admin interfaces use Tailwind CSS 4 tokens, shadcn components, lucide icons, and separate theme files so public branding can change without destabilizing admin workflows.
tailwindcss ^4shadcnlucide-react