create-js-universal-app
v1.1.2
Published
An interactive CLI scaffolding tool to spin up React (bare/Vite), Next.js, Vue, Angular, or Vanilla JS projects in seconds.
Maintainers
Readme
🚀 create-js-universal-app
An interactive, high-performance CLI scaffolding tool to spin up modern, pre-configured frontend projects in seconds.
Pick your platform, name your project, and start coding — no boilerplate headaches.
🎬 Demo
✨ Supported Platforms
| Platform | Template Key | Bundler | Description |
| ------------------- | ------------ | ---------------- | ------------------------------------- |
| React.js (Bare) | react-bare | Webpack + Babel | Standard production bundler setup |
| React.js (Vite) | react-vite | Vite | Ultra-fast HMR development |
| Next.js | nextjs | Next.js built-in | SSR & App Router framework |
| Vue.js | vue | Vite | Composition API with SFC support |
| Angular | angular | Angular CLI | Enterprise-ready TypeScript framework |
| Vanilla JS | vanilla | Vite | Pure JavaScript, HTML & CSS |
🚀 Quick Start
Run the scaffolder anywhere using npx (no installation required):
npx create-js-universal-appYou will be guided through a simple interactive prompt:
- Enter your project name (e.g.,
my-cool-app). - Select your framework/platform from the 6 options above.
- The CLI copies the template, customizes
package.json, and outputs the starting commands.
🛠️ Local Development & Testing
If you are developing this CLI locally or customizing its templates:
1. Direct Execution
Test the script immediately from the package root:
node ./bin/index.js2. Global Link Testing
Simulate a full npx run by linking the package executable to your system globally:
# Link the CLI
npm link
# Run it from any folder on your machine
create-js-universal-appTo remove the global link when you are done testing:
npm unlink -g create-js-universal-app📂 Project Structure
create-js-universal-app/
├── bin/
│ └── index.js # Interactive CLI entrypoint
├── templates/
│ ├── react-bare/ # React + Webpack + Babel
│ ├── react-vite/ # React + Vite
│ ├── nextjs/ # Next.js (App Router)
│ ├── vue/ # Vue 3 + Vite
│ ├── angular/ # Angular 18 (Standalone)
│ └── vanilla/ # Vanilla JS + Vite
├── package.json
└── README.md📂 Adding Custom Templates
You can easily extend the CLI to support new frameworks (e.g., Svelte, Astro, Solid):
- Add your pre-configured boilerplate folder under
templates/(e.g.,templates/svelte). - Open
bin/index.jsand add an entry in theoptionsarray:{ value: 'svelte', label: 'Svelte (Vite)', hint: 'Compiler-first UI framework' } - Add the label to the
platformLabelsobject:'svelte': 'Svelte', - Republish the package to npm.
📅 Maintenance & Update Schedule
To keep this scaffolding tool robust, secure, and modern, follow this recommended maintenance schedule:
🔄 Every 3 Months (Quarterly Checkup)
- Dependency Audit: Run
npm auditinside the root folder and in each template directory to patch security vulnerabilities. - Minor Upgrades: Upgrade minor versions of packages inside the template
package.jsonfiles (e.g., updating Vite or React minor patches).
🚀 Every 6 Months (Major Framework Alignment)
- Major Upgrades: Check for major releases of Next.js, Angular, React, and Vue.
- Template Updates: Update the code inside the corresponding templates if any APIs are deprecated by new framework versions.
📄 License
MIT
