Package Exports
- nova-init
- nova-init/dist/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (nova-init) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Nova-init
A modern CLI tool for scaffolding your next project
Nova-Init is a powerful command-line tool that helps you create complete full-stack projects with various frameworks, databases, and monorepo tools.
How too start
npx nova-init
bunx nova-init
pnpm dlx nova-init
✨ Features
🎯 Predefined Tech Stacks
- MERN - MongoDB, Express.js, React, Node.js (JavaScript)
- MERN_TS - MongoDB, Express.js, React, Node.js (TypeScript)
- MEAN - MongoDB, Express.js, Angular, Node.js (TypeScript)
- MEVN - MongoDB, Express.js, Vue.js, Node.js (JavaScript)
- MEVN_TS - MongoDB, Express.js, Vue.js, Node.js (TypeScript)
- FULLSTACK_TS - Next.js, NestJS, PostgreSQL, TypeScript
🛠 Supported Frameworks
Frontend:
- React (with Vite) - JavaScript library for building UIs
- Next.js - React framework for production
- Vue.js (with Vite) - Progressive JavaScript framework
- Svelte - Cybernetically enhanced web apps
- Angular - Platform for building mobile and desktop applications
- Nuxt.js - Intuitive Vue framework
- Astro - Build faster websites with less JavaScript
- Remix - Full-stack web framework (currently under maintenance)
- Solid.js - Declarative JavaScript library
- Qwik - The HTML-first framework
- Preact - Fast 3kB React alternative
- Lit - Simple. Fast. Web Components
Backend:
- Express.js - Fast, unopinionated, minimalist web framework
- NestJS - Progressive Node.js framework
- Fastify - Fast and low overhead web framework
- Hono - Fast Web framework built on Web Standards
🗄 Databases
- PostgreSQL - Advanced open source relational database
- MySQL - World's most popular open source database
- MongoDB - The database for modern applications
- Redis - In-memory data structure store
- MariaDB - Open source relational database
- Neo4j - The graph database platform
- Cassandra - Distributed NoSQL database
- CouchDB - The database that embraces the web
- CockroachDB - Distributed SQL database
- EdgeDB - Next generation database
- SurrealDB - Ultimate cloud database
- YugabyteDB - Distributed SQL database
📦 Package Managers
- npm - Node Package Manager (default)
- pnpm - Fast, disk space efficient package manager
- bun - All-in-one JavaScript runtime & package manager
🏗 Monorepo Tools
- Lerna - Tool for managing JavaScript projects with multiple packages
- Nx - Smart, fast and extensible build system
- Turborepo - High-performance build system
Available Commands
- nova-init standard command flags
Usage
| Flag | Description | Default |
| ---------------------------------- | ------------------------------------------------------------------------------------------------------| ---------- |
| `-n, --project-name <name>` | Name of the project (required). | - |
| `-t, --setup-type <type>` | Setup type: `custom` or `predefined`. | `custom` |
| `-f, --frontend <framework>` | Frontend framework to use (e.g., `react`, `vue`). | `react` |
| `-b, --backend <framework>` | Backend framework to use (e.g., `express`, `nestjs`). | `express` |
| `-d, --databases <dbs>` | Comma-separated list of databases to include (e.g., `mongodb,postgres`). | `none` |
| `-m, --monorepo <tool>` | Monorepo tool: `none`, `lerna`, `nx`, `turborepo`. | `none` |
| `-p, --package-manager <pm>` | Package manager for the project: `npm`, `pnpm`, `bun`. | `npm` |
| `--frontend-package-manager <pm>` | Package manager for the frontend (overrides global `-p`). | - |
| `--backend-package-manager <pm>` | Package manager for the backend (overrides global `-p`). | - |
| `--frontend-folder <folder>` | Custom folder name for the frontend project. | - |
| `--backend-folder <folder>` | Custom folder name for the backend project. | - |
| `--vite` | Use Vite for React projects. | true |
| `--microservices` | Enable microservices architecture for backend. | false |
| `--techstack <stack>` | Predefined tech stack: `MERN`, `MERN_TS`, `MEAN`, `MEVN`, `MEVN_TS`, `FULLSTACK_TS`. | - |
| `-g, --git` | Initialize a git repository in the project folder. | false |
# Create a custom React + Express project
nova-init -n my-app -t custom -f react -b express -d mongodb -p pnpm --frontend-folder web
# Use a monorepo with Lerna
nova-init -n my-monorepo -m lerna -p pnpm
# Enable microservices
nova-init -n microservices-app --microservices
# Use a predefined MERN TypeScript stack
nova-init -n my-mern-app --techstack MERN_TS- nova-init config Command for configurations
Usage
| Flag | Description |
| ------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `-p, --path <path>` | Specify the project path (default: `.`). |
| `--info` | Show detailed project information, including frontend/backend frameworks, databases, tech stack, and package managers. |
| `--show` | Display the current `nova-init.json` configuration. |
| `--validate` | Validate the existing configuration to ensure it is correct. |
| `--backup` | Create a backup of the current configuration. |
| `--restore <backup-path>` | Restore the configuration from a previous backup file. |
# Show project information
nova-init config --info
# Show current configuration
nova-init config --show
# Validate the configuration
nova-init config --validate
# Create a backup of the configuration
nova-init config --backup
# Output example: 📦 Backup created: ./nova-init.json.bak
# Restore configuration from a backup
nova-init config --restore ./nova-init.json.backup
# Output example: ✅ Configuration restored
# Use a different project path
nova-init config --show --path ./my-project📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
Built with ❤️ for the developer community