create
Scaffold a new full-stack project with your choice of framework, database, authentication, and more.
The create command is your entry point for every new project. It generates a complete, production-ready project structure in one step.
Usage
npx stackkit@latest create <project-name> [options]Run it without any flags to use the interactive mode — StackKit will ask you everything it needs:
npx stackkit@latest create my-appInteractive prompts
When you run create without flags, you'll be guided through the following choices:
- Framework — Next.js, Express.js, or React
- Database — Prisma, Mongoose, or None (only shown for Express)
- Database provider — PostgreSQL, MySQL, SQLite, or MongoDB (shown when Prisma is selected for Express)
- Authentication — Better Auth, or None
- UI library — Shadcn UI, or None
- Storage — Cloudinary, or None
- Language — TypeScript or JavaScript
- Package manager — pnpm, npm, yarn, or bun (auto-detected if a lockfile exists)
- Initialize git — Yes or No
After you confirm, StackKit generates all the files, installs dependencies, and creates an initial git commit.
Options
--framework, -f <value>
The base framework for your project.
| Value | Description |
|---|---|
nextjs | Next.js with App Router and TypeScript |
express | Node.js REST API with TypeScript |
react | Vite + React SPA with TypeScript |
--database, -d <value>
The database ORM or ODM to integrate.
| Value | Description |
|---|---|
prisma | Prisma ORM (prompts for provider) |
prisma-postgresql | Prisma with PostgreSQL |
prisma-mysql | Prisma with MySQL |
prisma-sqlite | Prisma with SQLite |
mongoose | Mongoose ODM for MongoDB (Express only) |
none | Skip database setup |
For Prisma provider details:
- postgresql
- mysql
- sqlite
--auth, -a <value>
The authentication library to integrate.
| Value | Description |
|---|---|
better-auth | Better Auth — TypeScript-first auth |
none | Skip authentication |
--ui, -u <value>
A UI component library to add.
| Value | Description |
|---|---|
shadcn | Shadcn UI with Tailwind CSS (Next.js and React only) |
--storage-provider <value>
File storage integration.
| Value | Description |
|---|---|
cloudinary | Cloudinary media uploads (Express only) |
Other options
| Flag | Description |
|---|---|
--language, -l | typescript (default) or javascript |
--package-manager, -p | pnpm, npm, yarn, or bun |
--yes, -y | Accept all defaults (Next.js + Better Auth + TypeScript + pnpm) |
--skip-install | Generate files without installing packages |
--no-git | Skip git repository initialization |
Examples
Interactive — recommended for first-time use:
npx stackkit@latest create my-appNext.js with Prisma and Better Auth:
npx stackkit@latest create my-app \
--framework nextjs \
--database prisma-postgresql \
--auth better-authExpress REST API with MongoDB:
npx stackkit@latest create my-api \
--framework express \
--database mongoose \
--auth better-authReact frontend with Shadcn UI:
npx stackkit@latest create my-spa \
--framework react \
--ui shadcnGenerate files only, install later:
npx stackkit@latest create my-app --skip-install
cd my-app
pnpm installUse all defaults:
npx stackkit@latest create my-app --yesWhat gets generated
Every generated project includes:
- Framework structure — Folder layout, routing, and entry points following framework conventions
- Module integrations — Config files, clients, and routes for each module you selected
package.json— All required dependencies pre-listedtsconfig.json— TypeScript with strict mode enabled.env.example— All environment variables documented with descriptions.gitignore— Tailored for your framework and modulesREADME.md— Project-specific setup and run instructions
Compatibility matrix
Not all modules work with every framework. Here's the full picture:
| Module | Next.js | Express | React |
|---|---|---|---|
| Prisma | — | ✓ | — |
| Mongoose | — | ✓ | — |
| Better Auth | ✓ | ✓ | ✓ |
| Shadcn UI | ✓ | — | ✓ |
| Cloudinary | — | ✓ | — |
| Components | ✓ | — | ✓ |
Better Auth on Express requires a database. The interactive prompt will enforce this — you can't select Better Auth without also selecting a database when the framework is Express.
Next steps
- Quick Start — Walk through your first project end to end
addcommand — Extend an existing project with more modules- Better Auth module — Post-generation setup for authentication