create-next-quick
Bootstrap your Next.js project in seconds with your preferred setup
Why create-next-quick?
create-next-quick is a powerful, lightweight alternative to
create-next-app, designed for developers who want more control and speed right from the
start.
| Feature | create-next-quick |
create-next-app |
|---|---|---|
| Multi-page Generation | ✅ Yes (e.g., home, about, contact) |
❌ No |
| ORM Support | ✅ Yes (Prisma, Drizzle) | ❌ No |
| Linter Choice | ✅ Yes (ESLint, Biome) | ❌ ESLint only |
| Shadcn UI Auto-Setup | ✅ Yes (non-interactive) | ❌ No |
| Clean Project Start | ✅ Yes (removes boilerplate & default assets) | ❌ No |
| Package Manager Detection | ✅ Yes (npm, yarn, pnpm) | ✅ Yes |
| Robust Error Handling | ✅ Yes (retries, cleanup, clear tips) | ❌ Basic |
Features
Project Scaffolding
- CLI Argument for Project Name: Skip the project name prompt by passing it as an argument.
- Custom Page Generation: Create multiple pages at once from the CLI.
-
Clean Project Setup: Automatically removes the default favicon, clears
the public folder, and provides a clean
page.tsxandlayout.tsx. - Safe Project Creation: Prevents accidental overwrites by checking if the target directory is empty.
-
Conditional API Route Deletion: Removes the default
hello.jsAPI route when not needed.
Tooling & Integrations
-
Package Manager Detection: Auto-detects
npm,yarn, andpnpm. - Linter Support: Choose between ESLint, Biome, or no linter.
- ORM Support: Integrated setup for Prisma or Drizzle.
- Shadcn UI: Automatically installs and configures Shadcn UI non-interactively.
-
TypeScript CSS Module Support: Generates
global.d.tsto provide type declarations for CSS imports.
Developer Experience
- Robust Error Handling: Automatic retries for failed installs, intelligent cleanup of incomplete projects, and actionable troubleshooting tips.
- Automated CI/CD Feedback: Get automated comments on the test status of your Pull Requests.
Usage
No global installation is needed. Run it instantly with npx:
npx create-next-quick [project-name]
If you omit [project-name], the tool will prompt you for it. Use . to
create in the current directory (must be empty).
Interactive Mode (for existing projects)
Already have a Next.js project? Use the -i or --interactive flag to run
create-next-quick on your existing project and add new features without starting from
scratch.
npx create-next-quick -i
When you run in interactive mode, the tool will:
-
Detect Your Project's Setup: It automatically detects if you're using
TypeScript, the
srcdirectory, theappdirectory, and Tailwind CSS. -
Skip Project Creation: It will not run
create-next-appor remove any existing files. - Prompt for Additions: It will only ask you what you want to add to your project, such as new pages, a linter, an ORM, or Shadcn UI.
This is perfect for when you want to add a new feature to your project and want to use the same streamlined setup process.
Interactive Prompts
The CLI will guide you through the following options:
| Prompt | Description | Default |
|---|---|---|
| Package Manager | Auto-detects installed npm, yarn, pnpm |
pnpm |
| TypeScript | Use TypeScript for type safety | Yes |
| Tailwind CSS | Use Tailwind CSS for styling | Yes |
src/ Directory |
Use the src/ directory for project structure |
Yes |
| App Router | Use the Next.js App Router | Yes |
| Pages | Enter page names to create (comma-separated) | none |
| Linter | Choose a linter (ESLint, Biome) |
none |
| ORM | Choose an ORM (Prisma, Drizzle) |
none |
| Shadcn UI | Automatically install and set up Shadcn UI | Yes |
Example Walkthrough
$ npx create-next-quick my-portfolio
✔ Using default for package manager: pnpm
✔ Using default for TypeScript: Yes
✔ Using default for Tailwind CSS: Yes
✔ Using default for src directory: Yes
✔ Using default for app directory: Yes
? Enter the names of the pages you want to create (comma-separated): home, about, contact
✔ Using default for linter: none
✔ Using default for ORM: none
✔ Using default for Shadcn UI: Yes
Prerequisites
Before you begin, ensure you have the following installed:
- Node.js:
v20.0.0or higher.
Available Scripts
Once your project is created, you can use the following commands:
pnpm |
npm |
yarn |
Description |
|---|---|---|---|
pnpm dev |
npm run dev |
yarn dev |
Starts the development server. |
pnpm build |
npm run build |
yarn build |
Builds the app for production. |
pnpm start |
npm start |
yarn start |
Starts the production server. |
Testing
The test suite is dynamically generated to ensure comprehensive coverage.
- Generate Test Cases:
npm run test:generate - Run Tests:
npm test
Contributing
Contributions are welcome! Please fork the repository, create a feature branch, and open a Pull Request.
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name - Commit your changes:
git commit -m "feat: Add some amazing feature" - Push to the branch:
git push origin feature/your-feature-name - Open a Pull Request.
Show Your Support
Give a ⭐️ if this project helped you!
License
This project is licensed under the MIT License. See the LICENSE file for details.