create-nhut9dev-app
v1.2.4
Published
Create a new project from templates (NextJS 16 Clean Architecture, Express Clean Architecture, API Gateway, Turbo Nextjs + Expo)
Maintainers
Readme
create-nhut9dev-app
A CLI tool to quickly scaffold modern web projects with best practices and pre-configured templates.
Available Templates
1. Next.js 16 Clean Architecture
- Next.js 16 with App Router + React 19
- TypeScript 5 with strict mode
- Clean Architecture + Domain-Driven Design (DDD)
- State Management:
- Zustand (Client state)
- React Query (Server state with caching)
- Tailwind CSS 4
- Testing:
- Jest + React Testing Library (Unit/Integration)
- Playwright (E2E tests)
- Code Quality:
- ESLint + Prettier
- Husky + lint-staged (Git hooks)
- Turbopack build tool
- HTTP client with interceptors
- Global error handling system
2. Clean Architecture Express
- Express.js with Clean Architecture pattern
- TypeScript support
- Layered architecture (domain, application, infrastructure)
- Environment configuration
3. API Gateway
- API Gateway architecture
- Service orchestration
- Environment configuration
4. Turbo Next.js + Expo
- Monorepo powered by Turborepo
- Next.js 16 web application with:
- React 19
- TypeScript and Tailwind CSS
- Internationalization (i18n) with next-intl
- Jest and Playwright for testing
- ESLint and Prettier
- Expo mobile application with:
- React Native and Expo Router
- TypeScript support
- Shared UI components
- Shared packages:
@repo/ui- Shared React components@repo/eslint-config- ESLint configurations@repo/prettier-config- Prettier configurations@repo/typescript-config- TypeScript configurations
Usage
npx create-nhut9dev-app
# or if installed globally
create-nhut9dev-appYou will be prompted to:
- Choose a project template (Next.js 16 Clean Architecture, Clean Architecture Express, API Gateway, or Turbo Next.js + Expo)
- Enter your project name
The CLI will automatically:
- Copy the selected template
- Rename
gitignoreto.gitignore - Rename
env.exampleto.env(if available) - Replace placeholders in
package.jsonwith your project name - Replace placeholders in
README.mdwith your project name (if available) - Replace placeholders in
app.jsonwith your project name (for Expo projects)
After Creating Your Project
Once your project is created, navigate to the project directory and install dependencies:
cd your-project-name
npm installThen start the development server:
# For Next.js, Clean Architecture Express, or API Gateway
npm run dev
# For Turbo Next.js + Expo monorepo
npm run dev # Start both web and mobile
npm run dev:web # Start web only
npm run dev:mobile # Start mobile only
npm run android # Start Android app
npm run ios # Start iOS appProject Structure
bin/– CLI entry pointtemplates/– Project templatesnextjs16-clean-architecture/– Next.js 16 with Clean Architecture, DDD, React Query, Zustandclean-architecture-express/– Express.js with Clean Architectureapi-gateway/– API Gateway templateturbo-nextjs-expo/– Turborepo monorepo with Next.js 16 and Expo
package.json– CLI configuration
License
MIT – see LICENSE
