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

create-stacksfinder

v0.8.3

Published

CLI to scaffold optimized tech stacks with deterministic scoring - no AI hallucinations

Readme

create-stacksfinder

npm version License: MIT

  ╔═══════════════════════════════════════════════════════╗
  ║                                                       ║
  ║   ███████╗████████╗ █████╗  ██████╗██╗  ██╗███████╗   ║
  ║   ██╔════╝╚══██╔══╝██╔══██╗██╔════╝██║ ██╔╝██╔════╝   ║
  ║   ███████╗   ██║   ███████║██║     █████╔╝ ███████╗   ║
  ║   ╚════██║   ██║   ██╔══██║██║     ██╔═██╗ ╚════██║   ║
  ║   ███████║   ██║   ██║  ██║╚██████╗██║  ██╗███████║   ║
  ║   ╚══════╝   ╚═╝   ╚═╝  ╚═╝ ╚═════╝╚═╝  ╚═╝╚══════╝   ║
  ║                         finder                        ║
  ║                                                       ║
  ╚═══════════════════════════════════════════════════════╝

Scaffold optimized tech stacks with deterministic scoring.

CLI tool that recommends and generates production-ready projects based on your requirements. No AI hallucinations — just data-driven recommendations from versioned lookup tables.

Quick Start

# With Bun (recommended)
bun create stacksfinder my-app

# With npm
npx create-stacksfinder@latest my-app

# With pnpm
pnpm create stacksfinder my-app

Features

  • Deterministic Scoring — Same input = same output, always. 80+ technologies scored across 6 dimensions.
  • Interactive Prompts — Choose project type, scale, ecosystem, priorities, and constraints.
  • Project Generation — Scaffolds Next.js, SvelteKit, Nuxt, or Remix with your recommended stack.
  • Offline Mode — Embedded scoring data, works without internet.
  • Minimal ASCII Style — Clean terminal output, no emojis.

Usage

Interactive Mode (default)

bun create stacksfinder

You'll be prompted for:

  1. Project Name — e.g., my-saas-app
  2. Project Typesaas, web-app, marketplace, api, e-commerce, blog, portfolio
  3. Scalemvp, startup, growth, enterprise
  4. Priority — Your top priority: speed, dx, perf, cost, scale, security
  5. Constraints — Optional: configure technical requirements (opt-in)

Quick Mode

Skip all prompts with CLI flags:

# Basic quick mode (defaults: saas, mvp, speed)
bun create stacksfinder my-app --quick

# With custom options
bun create stacksfinder my-app --quick --type saas --scale startup --priority dx

Quick Mode Flags:

  • -q, --quick — Skip prompts, use defaults
  • --type <type>saas, web-app, marketplace, api, e-commerce, blog, portfolio
  • --scale <scale>mvp, startup, growth, enterprise
  • --priority <priority>speed, dx, perf, cost, scale, security

Compare Mode

Compare two preset configurations side-by-side:

# Default: mvp vs enterprise
bun create stacksfinder --compare

# Custom presets
bun create stacksfinder --compare --preset1 startup --preset2 agency

Available Presets: mvp, startup, enterprise, agency, ecommerce, api

Blueprint Mode (Pro)

Generate a project from a saved blueprint:

bun create stacksfinder my-app --from-blueprint abc123 --api-key sk_...

Or use the environment variable:

export STACKSFINDER_API_KEY=sk_...
bun create stacksfinder my-app --from-blueprint abc123

Requires a Pro/Team subscription. Get your API key at stacksfinder.com/settings/api-keys

Recommend Only

Get recommendations without generating a project:

bun create stacksfinder --recommend-only
# or
bun create stacksfinder -r

JSON Output

Output recommendations as JSON for automation:

bun create stacksfinder --json
# or
bun create stacksfinder -j

Expert Mode

Configure all 27 constraints:

bun create stacksfinder my-app --expert

Example Output

  ╔═══════════════════════════════════════════════════════╗
  ║   ███████╗████████╗ █████╗  ██████╗██╗  ██╗███████╗   ║
  ║   ...                                                 ║
  ╚═══════════════════════════════════════════════════════╝

  Scaffold optimized tech stacks
  Powered by deterministic scoring

  STEP 1: Project Configuration

  Project Name:  my-saas-demo
  Project Type:  saas
  Scale:         mvp
  Ecosystem:     javascript
  Priorities:    speed, dx, cost
  Constraints:   real-time

  STEP 2: Analyzing 50+ Technologies...

  > Scoring completed in 2ms

  STEP 3: Recommended Stack

  ==================================================
  Framework    SvelteKit       [A]  Excellent fit
               Alt: Next.js (A-), Nuxt (B+)
  Database     Supabase        [A]  Excellent fit
               Alt: Neon (A-), PlanetScale (B+)
  ORM          Drizzle         [A+] Perfect fit
               Alt: Prisma (A), Kysely (B+)
  Auth         Better Auth     [A]  Excellent fit
  Hosting      Vercel          [A]  Excellent fit
  Payments     Paddle          [A]  Excellent fit
  ==================================================

  Stack Score: A (86/100)
  Production-ready stack with excellent balance

  Confidence: HIGH
    - Clear winner in most categories
    - Strong compatibility between choices
    - Well-tested combination

  ------------------------------------------------
  Fine-tune with 25+ constraints:
  stacksfinder.com/builder

Scoring Dimensions

All technologies are scored across 6 dimensions (0-100):

| Dimension | Description | |-----------|-------------| | Performance | Runtime speed, bundle size, optimization | | DX | Learning curve, tooling, documentation | | Ecosystem | Community size, integrations, job market | | Maintainability | Long-term code health, upgrade path | | Cost | Hosting costs, licensing, operational overhead | | Compliance | Security features, audit readiness |

Generated Project Structure

my-app/
├── package.json          # Dependencies for your stack
├── tsconfig.json         # TypeScript configuration
├── .env.example          # Environment variables template
├── .gitignore
├── README.md             # Getting started guide
├── src/                  # Framework-specific structure
│   └── ...
├── drizzle.config.ts     # If using Drizzle ORM
└── prisma/               # If using Prisma ORM
    └── schema.prisma

Supported Technologies

Meta-Frameworks

Next.js, SvelteKit, Nuxt, Remix, Astro, SolidStart

Databases

PostgreSQL, Supabase, Neon, PlanetScale, Turso, MongoDB, SQLite

ORMs

Drizzle, Prisma, Kysely, TypeORM, Sequelize

Auth

Better Auth, Lucia, Auth.js, Clerk, Supabase Auth

Hosting

Vercel, Netlify, Railway, Fly.io, Cloudflare, AWS

Payments

Stripe, Paddle, LemonSqueezy

Options

Quick Mode

| Flag | Alias | Description | |------|-------|-------------| | --quick | -q | Skip prompts, use defaults | | --type <type> | | Project type (saas, web-app, etc.) | | --scale <scale> | | Scale (mvp, startup, growth, enterprise) | | --priority <priority> | | Top priority (speed, dx, perf, cost, scale, security) |

Advanced

| Flag | Description | |------|-------------| | --from-blueprint <id> | Generate from saved blueprint (requires API key) | | --api-key <key> | API key (or use STACKSFINDER_API_KEY env) | | --compare | Compare two preset stacks side-by-side | | --preset1 <name> | First preset (mvp, startup, enterprise, agency, ecommerce, api) | | --preset2 <name> | Second preset (default: enterprise) |

Other

| Flag | Alias | Description | |------|-------|-------------| | --expert | -e | Configure all 27 constraints | | --recommend-only | -r | Only show recommendations, skip generation | | --json | -j | Output as JSON | | --version | -v | Show version and data versions | | --help | -h | Show help |

Programmatic Usage

import { scoreStack } from 'create-stacksfinder/scoring';

const context = {
  projectName: 'my-app',
  projectType: 'saas',
  scale: 'mvp',
  ecosystem: 'typescript',
  priorities: ['speed', 'dx', 'cost'],
  constraints: ['real-time'],
};

const stack = scoreStack(context);
console.log(stack.categories); // Recommended technologies
console.log(stack.stackScore); // Overall grade

Pro Features

Want more control? Visit stacksfinder.com for:

  • 25+ Constraints — Fine-tune recommendations with advanced filters
  • AI Narratives — Get detailed explanations for each choice
  • Blueprints — Save and share your stack configurations
  • Audits — Analyze existing projects for technical debt
  • MCP Server — Use in Claude, Cursor, Windsurf, VS Code

Telemetry

This CLI collects anonymous usage data to help us improve the product. We track:

  • CLI version
  • Action type (recommend/generate)
  • Project type, scale, ecosystem (no project names)
  • Priority and constraint counts
  • OS platform

We never collect: IP addresses, machine IDs, project names, file paths, or any personally identifiable information.

Opt-out

Set any of these environment variables to disable telemetry:

# Option 1: StacksFinder-specific
export STACKSFINDER_TELEMETRY_DISABLED=1

# Option 2: Standard Do Not Track
export DO_NOT_TRACK=1

# Option 3: CI environments (auto-disabled)
export CI=true

The telemetry code is open source — inspect it yourself.

Related

License

MIT