create-next-quick
v1.0.7
Published
A CLI tool to quickly scaffold a Next.js project
Maintainers
Readme
🛠 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 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: YesWhy 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.
Prerequisites
- 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.
