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

template-create-ts

v1.3.2

Published

Ultimate reusable TypeScript fullstack/backend template scaffolder with Bun, React, Fastify, Drizzle, and security tooling

Readme

template-create-ts

Ultimate reusable TypeScript fullstack/backend template scaffolder.

Scaffold production-ready monorepos with Bun, React, Fastify, Drizzle ORM, Zod, Socket.IO, and a comprehensive security toolchain.

Quick Start

# Using Bun
bunx template-create-ts my-app

# Using npx
npx template-create-ts my-app

# API-only, no database
bunx template-create-ts my-api --db none --no-web

What You Get

Core Stack

  • TypeScript — strict mode, workspace monorepo
  • Bun — runtime & package manager
  • React + Vite — frontend on port 9000
  • Fastify — API server on port 9001 with OpenAPI /docs
  • Drizzle ORM — SQLite (libsql) with Drizzle Kit & Studio
  • Zod — runtime validation
  • Socket.IO — realtime messaging
  • Biome — linting & formatting

Testing

  • Vitest — unit & integration tests
  • Playwright — E2E browser tests

Security Tooling

| Tool | Purpose | |------|---------| | @bun-security-scanner/osv | OSV vulnerability scanning | | @nodesecure/cli | Dependency analysis | | snyk | Security testing | | lockfile-lint | Lockfile integrity | | bun-scan | Bun security scan | | depcheck | Unused dependency detection | | detective-typescript | Dependency graph | | dompurify / xss / is-unsafe | Input sanitization | | secure-json-parse | Safe JSON parsing | | crypto-js | Hashing & encryption |

CLI Options

template-create-ts <project-name> [options]

  -i, --interactive               Prompt for database and options
      --db <sqlite|postgres|none> Database (default: sqlite)
  -t, --template <name>           Template variant (default: default)
      --no-web                    API-only scaffold (skip React app)
      --no-security               Skip heavy security devDependencies
      --no-install                Skip bun install
      --no-git                    Skip git init
      --dry-run                   Preview actions without writing files
  -h, --help                      Show help

Development

git clone https://github.com/Masterofowls/template-create-ts.git
cd template-create-ts
bun install
bun run build
bun run dev -- my-test-app --no-install

CI/CD & npm Trusted Publishing

GitHub Actions workflows:

| Workflow | File | Trigger | |----------|------|---------| | CI | .github/workflows/ci.yml | Push/PR to main | | Publish | .github/workflows/publish.yml | Tag v*, release, or manual dispatch |

Publishing uses npm trusted publishers (OIDC) — no long-lived npm tokens in GitHub Secrets.

One-time setup (package owner)

$env:NPM_TOKEN = "npm_..."   # granular token with publish permission
./scripts/configure-npm-trust.ps1

Or with npm CLI v11+ directly:

npm trust github template-create-ts \
  --file publish.yml \
  --repo Masterofowls/template-create-ts \
  --allow-publish -y

Release a new version

See docs/PUBLISHING.md for OIDC trusted publisher setup and 404 troubleshooting.

npm version patch
git push origin main --tags

The publish.yml workflow publishes to npm with provenance when a v* tag is pushed.

License

MIT