create-nuxt-base
Starter to generate a configured environment with VueJS, Nuxt, Tailwind, Linting, Unit Tests, Playwright etc.
7,114
| Install | |
|---|---|
npm install create-nuxt-base |
|
| Latest Version: | 2.7.0 |
| License: | MIT |
| Last Updated: | Oct 27, 2026 |
| Links: | GitHub · npm |
Maintainer: pascal.klesse
create-nuxt-base
A CLI tool to scaffold a production-ready Nuxt 4 application with TypeScript, Tailwind CSS v4, NuxtUI v4, and modern tooling.
Quick Start
npx create-nuxt-base my-awesome-project
cd my-awesome-project
pnpm run dev
The development server starts at http://localhost:3001
What's Included
Core Framework
| Technology | Version | Description |
|---|---|---|
| Nuxt | 4.x | Vue 3 meta-framework with SSR support |
| TypeScript | 5.9.x | Strict type checking enabled |
| Tailwind CSS | 4.x | Utility-first CSS with Vite plugin |
| NuxtUI | 4.x | Component library with dark mode |
Authentication (Better Auth)
Complete authentication system using Better Auth:
| Feature | Description |
|---|---|
| Email/Password | Standard auth with client-side SHA256 hashing |
| Two-Factor (2FA) | TOTP-based 2FA with backup codes |
| Passkey/WebAuthn | Passwordless authentication (Touch ID, Face ID, etc.) |
| Password Reset | Email-based password reset flow |
| Session Management | SSR-compatible cookie-based sessions |
Pre-built auth pages: login, register, forgot-password, reset-password, 2fa
📖 See AUTH.md for detailed documentation
State & Data
| Package | Purpose |
|---|---|
| Pinia | State management |
| VueUse | Vue composition utilities |
| @hey-api/client-fetch | Type-safe API client |
| Valibot | Schema validation for forms |
SEO & Analytics
- @nuxtjs/seo - Sitemap, robots.txt, OG images
- @nuxtjs/plausible - Privacy-friendly analytics
- @nuxt/image - Image optimization with IPX
Developer Experience
| Tool | Purpose |
|---|---|
| OxLint | Fast linting |
| OxFmt | Code formatting |
| Playwright | E2E testing |
| @lenne.tech/bug.lt | Bug reporting to Linear (dev only) |
| dayjs-nuxt | Date/time handling |
File Upload
- TUS resumable upload support (
tus-js-client) - Pre-built
TusFileUpload.vuecomponent
Docker Support
Dockerfile.devfor containerized development- Hot reload enabled
Project Structure
my-project/
├── app/
│ ├── assets/css/ # Tailwind CSS
│ ├── components/ # Vue components (auto-imported)
│ │ ├── Modal/ # Modal components
│ │ ├── Transition/ # Transition components
│ │ └── Upload/ # File upload components
│ ├── composables/ # Composables (auto-imported)
│ ├── interfaces/ # TypeScript interfaces
│ ├── layouts/ # Nuxt layouts
│ ├── lib/ # Auth client configuration
│ ├── middleware/ # Route middleware (auth, admin, guest)
│ ├── pages/ # File-based routing
│ │ ├── auth/ # Authentication pages
│ │ └── app/ # Protected app pages
│ ├── utils/ # Utility functions
│ └── app.config.ts # NuxtUI configuration
├── docs/ # Dev-only documentation layer
├── tests/ # Playwright E2E tests
├── nuxt.config.ts # Nuxt configuration
├── openapi-ts.config.ts # API type generation config
└── playwright.config.ts # E2E test configuration
Available Scripts
| Script | Description |
|---|---|
pnpm run dev |
Start development server |
pnpm run build |
Build for production |
pnpm run preview |
Preview production build |
pnpm run generate-types |
Generate TypeScript types from OpenAPI |
pnpm run test |
Run Playwright E2E tests |
pnpm run lint |
Run OxLint |
pnpm run format |
Run OxFmt |
pnpm run check |
Run lint + format check |
pnpm run fix |
Auto-fix lint + format issues |
Environment Variables
Create a .env file based on .env.example:
# Required
SITE_URL=http://localhost:3001
API_URL=http://localhost:3000
APP_ENV=development
NODE_ENV=development
# Optional
WEB_PUSH_KEY= # Web push notifications
LINEAR_API_KEY= # Bug reporting
LINEAR_TEAM_NAME= # Bug reporting
LINEAR_PROJECT_NAME= # Bug reporting
STORAGE_PREFIX=base-dev # Local storage prefix
Requirements
- Node.js >= 22
- pnpm >= 9
License
MIT
Version History
| Version | Released | License |
|---|---|---|
| 2.7.0 | MIT | |
| 2.6.7 | MIT | |
| 2.6.6 | MIT | |
| 2.6.5 | MIT | |
| 2.6.4 | MIT | |
| 2.6.3 | MIT | |
| 2.6.2 | MIT | |
| 2.6.0 | MIT | |
| 2.5.3 | MIT | |
| 2.5.2 | MIT | |
| 2.5.1 | MIT | |
| 2.5.0 | MIT | |
| 2.4.0 | MIT | |
| 2.3.1 | MIT | |
| 2.3.0 | MIT | |
| 2.2.8 | MIT | |
| 2.2.7 | MIT | |
| 2.2.6 | MIT | |
| 2.2.5 | MIT | |
| 2.2.4 | MIT | |
| 2.2.3 | MIT | |
| 2.2.2 | MIT | |
| 2.2.1 | MIT | |
| 2.2.0 | MIT | |
| 2.1.4 | MIT | |
| 2.1.3 | MIT | |
| 2.1.2 | MIT | |
| 2.1.1 | MIT | |
| 2.1.0 | MIT | |
| 2.0.0 | MIT |
Showing the latest 30 of 86. See every release on npm