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

@idevconn/create-icore

v0.9.2

Published

Bootstrap a new project from the iCore scaffold (Nx + NestJS + React + Vite + shadcn/Tailwind, swappable auth + storage providers).

Readme

@idevconn/create-icore

Scaffold a new iCore monorepo project in seconds.

Usage

npm init @idevconn/icore my-saas -- --auth=supabase --db=supabase --upload=supabase --ui=shadcn

npm init @idevconn/icore follows the standard npm convention — npm resolves it to @idevconn/create-icore and runs the bundled create-icore binary. Equivalent invocations:

yarn create @idevconn/icore my-saas                # yarn berry / classic
pnpm create @idevconn/icore my-saas                # pnpm
npx @idevconn/create-icore my-saas                 # direct
npm i -g @idevconn/create-icore && create-icore my-saas

Flags

| Flag | Values | Default | Notes | | -------------- | -------------------------------------------------- | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | --auth | supabase | firebase | mongodb | none | prompted | Auth provider. Use none for a minimal SPA with no login system — skips db, example, and transport questions. | | --db | supabase | firebase | mongodb | none | prompted | Database backend. Fully independent of --auth — mix-and-match combos like --auth=firebase --db=supabase are first-class. Use none when --auth=none (set automatically). | | --upload | supabase | firebase | cloudinary | none | prompted | File upload provider. Use none to remove the upload microservice entirely. | | --ui | shadcn | antd | mui | shadcn | UI library. All three are fully implemented: shadcn (Tailwind 4 + shadcn/ui), antd (Ant Design 6), mui (MUI 6 / Material Design). | | --transport | tcp | redis | nats | tcp | Microservice transport | | --no-git | — | git enabled | Skip git init | | --no-install | — | install enabled | Skip yarn install | | --config | path to .json file | — | Pre-fill any wizard answer from a JSON file. Missing fields still prompt interactively. CLI flags override config values. See Non-interactive / CI mode below. |

Deprecated: --storage is a deprecated alias for --upload. A warning is printed to stderr and the value is forwarded to --upload. Remove --storage from your scripts.

Examples

# Full stack with Supabase + shadcn/ui
npm init @idevconn/icore my-saas -- --auth=supabase --db=supabase --upload=supabase --ui=shadcn

# Firebase auth + Supabase Postgres for app data (mix-and-match)
npm init @idevconn/icore my-saas -- --auth=firebase --db=supabase --upload=cloudinary --ui=shadcn

# Ant Design + Cloudinary
npm init @idevconn/icore my-saas -- --auth=supabase --db=supabase --upload=cloudinary --ui=antd

# Material UI + Firebase
npm init @idevconn/icore my-saas -- --auth=firebase --db=firebase --upload=cloudinary --ui=mui

# Firebase auth + Cloudinary uploads
npm init @idevconn/icore my-app -- --auth=firebase --db=firebase --upload=cloudinary

# Skip the upload microservice entirely (--upload=none)
npm init @idevconn/icore api-only -- --auth=supabase --db=supabase --upload=none --no-install

# No auth — simple SPA (no login system, no auth microservice)
npm init @idevconn/icore spa-app -- --auth=none --upload=none --no-install

# NATS transport
npm init @idevconn/icore my-app -- --auth=supabase --db=supabase --upload=supabase --transport=nats

Non-interactive / CI mode

Pass --config <path> to skip individual prompts using a JSON file. Any field omitted from the file is still asked interactively. Individual CLI flags always override config file values.

{
  "projectName": "demo-saas",
  "authProvider": "supabase",
  "dbProvider": "supabase",
  "upload": "cloudinary",
  "payment": "none",
  "jobs": "bullmq",
  "example": "notes",
  "ui": "shadcn",
  "transport": "nats",
  "packageManager": "yarn",
  "initGit": true,
  "install": false
}
# Fully non-interactive — all fields in config, no prompts
npx @idevconn/create-icore --config ./my-config.json

# CLI flag overrides config value (firebase wins over supabase in the file)
npx @idevconn/create-icore --auth firebase --config ./my-config.json

Field names mirror the TypeScript CreateIcoreOptions type. Unknown fields are silently ignored. targetDir is always derived from projectName + the working directory and is ignored if present.

Building

Run nx build create-icore to build the library.

Running unit tests

Run nx test create-icore to execute the unit tests via Vitest.