npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@vipinyadav02/createjsstack

v1.3.0

Published

A powerful, modern CLI tool for scaffolding production-ready JavaScript full-stack projects with extensive customization options and best practices built-in.

Readme

Create JS Stack CLI

npm version npm downloads License

A powerful CLI tool for scaffolding production-ready JavaScript full-stack projects with best practices built-in.

🚀 Quick Start

# Interactive setup (recommended)
npx @vipinyadav02/createjsstack@latest my-app

# Quick start with defaults
npx @vipinyadav02/createjsstack@latest my-app --yes

# Start from a preset
npx @vipinyadav02/createjsstack@latest my-app --preset mern --yes

# Custom stack
npx @vipinyadav02/createjsstack@latest my-app \
  --frontend react \
  --backend express \
  --database mongodb \
  --orm mongoose \
  --package-manager pnpm \
  --git \
  --install

🧠 How It Works

createjsstack builds your project by layering templates on top of each other, one per choice you make:

base  →  frontend  →  backend  →  database/orm  →  auth  →  api  →  addons  →  examples

Each layer contributes its own files. For package.json, the layers are deep-merged (not overwritten), so the dependencies and scripts from every layer are combined into a single coherent file. Your project always gets a base (package.json, README.md, .gitignore, LICENSE) plus everything your selected stack needs.

You can configure the stack in three ways, and they compose left-to-right (later wins):

  1. Presets — a named bundle of choices (--preset mern)
  2. Individual flags — override any single choice (--database postgres)
  3. Interactive prompts — run with no flags for a guided setup
# Preset as a base, then override just the database + orm
npx @vipinyadav02/createjsstack@latest my-app --preset mern --database postgres --orm prisma --yes

📦 Presets

| Preset | Frontend | Backend | Database | ORM | | ---------------- | -------- | ------- | -------- | -------- | | mern | react | express | mongodb | mongoose | | next-fullstack | next | next | postgres | prisma | | react-vite | react | — | — | — | | express-api | — | express | postgres | prisma |

# List all presets
npx @vipinyadav02/createjsstack@latest list

✨ Features

Supported Technologies

Frontend: react, next, vue, nuxt, svelte, sveltekit, solid, qwik, astro, angular, remix, react-router, tanstack-router, tanstack-start, native-nativewind, native-unistyles
Backend: express, hono, fastify, nest, koa, elysia, next, convex
Databases: mongodb, postgres, mysql, sqlite
ORMs: prisma, drizzle, mongoose, typeorm, mikro-orm
Auth: better-auth, clerk, next-auth, lucia
API: trpc, orpc, graphql, rest
Addons: docker, biome, turborepo, pwa, tauri, vitest, playwright, cypress
Package Managers: npm, pnpm, bun

📖 Usage Examples

MERN (MongoDB + Express + React)

npx @vipinyadav02/createjsstack@latest my-app --preset mern --yes

Next.js Full-Stack

npx @vipinyadav02/createjsstack@latest my-app \
  --frontend next \
  --backend next \
  --database postgres \
  --orm prisma \
  --auth better-auth \
  --package-manager pnpm

API Backend Only

npx @vipinyadav02/createjsstack@latest my-api \
  --frontend none \
  --backend nest \
  --database postgres \
  --orm typeorm \
  --addons docker

📋 CLI Options

| Option | Description | Values | | ------------------- | -------------------------- | ------------------------------------------------------------------------------- | | --preset | Start from a preset | mern, next-fullstack, react-vite, express-api | | --frontend | Frontend framework | react, next, vue, nuxt, svelte, angular, solid, astro, … none | | --backend | Backend framework | express, hono, fastify, nest, koa, elysia, next, convex, none | | --database | Database system | mongodb, postgres, mysql, sqlite, none | | --orm | ORM/ODM | prisma, drizzle, mongoose, typeorm, mikro-orm, none | | --auth | Authentication | better-auth, clerk, next-auth, lucia, none | | --api | API style | trpc, orpc, graphql, rest, none | | --runtime | Runtime environment | node, bun, deno, workers | | --addons | Additional tools (CSV) | docker, biome, turborepo, pwa, tauri, vitest, playwright | | --package-manager | Package manager | npm, pnpm, bun | | --git / --no-git | Initialize git repository | Flag | | --install / --no-install | Install dependencies | Flag | | --yes | Use defaults (skip prompts) | Flag |

Note: Project name is always customizable, even with --yes flag. Run npx @vipinyadav02/createjsstack@latest create --help for the full option list.

🌐 Interactive Builder

Visit createjsstack.dev/new to use our interactive stack builder and generate commands visually.

📚 Documentation

🛠️ Development

# Clone repository
git clone https://github.com/vipinyadav01/js-stack.git
cd js-stack

# Install dependencies
npm install

# Build CLI
npm run build:cli

# Link for local testing
npm link

# Test locally
createjsstack create test-project --preset mern --yes

🤝 Contributing

Contributions are welcome! Please see CONTRIBUTING.md for guidelines.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'feat: add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📄 License

MIT License - see the LICENSE file for details.

🔗 Links


Built with ❤️ by Vipin Yadav

Website • Documentation • GitHub