The foundation is up.

Clerk handles sign-in. Every signed-in user is written to the Convex users table, and read back from it on the dashboard.

Next.js 16

App Router, React 19, Turbopack

Convex

Reactive database, queries and mutations

Clerk

Hosted auth, synced into the users table

Tailwind v4

Utility styling, no config file