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

ts-package-init

v1.0.0

Published

Fast, minimal, and modern TypeScript project initializer

Downloads

23

Readme

ts-package-init

npm license node downloads

A fast, minimal TypeScript CLI project initializer for Node.js.

Create modern TypeScript projects with sensible defaults in seconds — without framework bloat or unnecessary boilerplate.


Why

Many TypeScript starter templates are:

  • Over-engineered
  • Framework-heavy
  • Bloated with configuration
  • Hard to customize

ts-package-init is a lightweight TypeScript CLI tool that scaffolds clean Node.js projects with practical defaults.

Start fast. Stay minimal. Scale when needed.

✨ Features

  • Zero-config TypeScript setup
  • Presets: base, library, backend, cli, monorepo, nestjs, moleculer
  • CommonJS or ESM (--esm)
  • Optional ESLint & Prettier
  • Optional interactive mode (--interactive)
  • Package manager selection (--package-manager)
  • Uses tsx for fast dev experience
  • Works with Node.js 18+

🚀 Usage

Quick start

npx ts-package-init my-app
cd my-app
npm run dev

Using npm init

npm init ts-package my-app

Expected output (file tree)

Minimal structure shown. Additional files are added based on flags.

Base (default)

my-app/
  package.json
  tsconfig.json
  src/
    index.ts

Library

my-lib/
  package.json
  tsconfig.json
  src/
    index.ts

Backend

api/
  package.json
  tsconfig.json
  src/
    index.ts

CLI

my-cli/
  package.json
  tsconfig.json
  src/
    index.ts

Monorepo

my-workspace/
  package.json
  tsconfig.json
  packages/
    app/
      package.json
      tsconfig.json
      src/
        index.ts

NestJS

my-nest/
  package.json
  tsconfig.json
  src/
    index.ts
    main.ts
    app.module.ts
    app.controller.ts
    app.service.ts

Moleculer

my-broker/
  package.json
  tsconfig.json
  src/
    index.ts
    moleculer.config.ts
    services/
      greeter.service.ts

Optional files and changes

  • --eslint: adds eslint.config.js.
  • --prettier: adds eslint.config.js (with Prettier) and .prettierrc.json.
  • --git: adds .git/.
  • --esm: updates package.json and tsconfig.json (no new files).
  • --skip-install / --package-manager: no file tree changes.

📦 Presets

Base (default)

Minimal runnable TypeScript project.

npx ts-package-init my-app

Scripts:

{
  "build": "tsc",
  "dev": "tsx watch src/index.ts"
}

Library

For reusable npm packages.

npx ts-package-init my-lib --preset library

Includes:

  • type declarations
  • clean build output

Backend

For APIs, workers, and services.

npx ts-package-init api --preset backend

Includes:

  • dev, build, start scripts
  • long-running process defaults

CLI

For command-line tools.

npx ts-package-init my-cli --preset cli

Includes:

  • executable binary
  • Node shebang support

Monorepo

For npm workspaces with a minimal app package.

npx ts-package-init my-workspace --preset monorepo

Includes:

  • root workspaces config
  • packages/app with build/dev scripts

NestJS

Minimal NestJS app scaffold (controller, service, module, main).

npx ts-package-init my-nest --preset nestjs

Includes:

  • App controller + service
  • Module + main bootstrap
  • build/dev/start scripts

Moleculer

Minimal Moleculer broker scaffold (config + sample service).

npx ts-package-init my-broker --preset moleculer

Includes:

  • Broker config
  • Sample service
  • build/dev/start scripts

📘 ESM Support

Enable ESM with:

npx ts-package-init my-app --esm

This will:

  • set "type": "module"
  • adjust TypeScript config automatically

🧹 ESLint & Prettier (optional)

npx ts-package-init my-app --eslint
npx ts-package-init my-app --prettier

Prettier automatically enables ESLint integration.


⚙️ Additional flags

npx ts-package-init my-app --interactive
npx ts-package-init my-app --skip-install
npx ts-package-init my-app --package-manager pnpm
npx ts-package-init my-app --git

🧪 Examples

npx ts-package-init demo
npx ts-package-init my-lib --preset library --esm
npx ts-package-init api --preset backend --eslint --prettier
npx ts-package-init tool --preset cli
npx ts-package-init my-workspace --preset monorepo --skip-install
npx ts-package-init my-nest --preset nestjs --package-manager pnpm
npx ts-package-init my-broker --preset moleculer --interactive

🚢 Release

npm run build
npm pack --dry-run
npm publish

📄 License

MIT


Support

If this package helps you, please consider supporting it:

⭐ Star the repository
☕ Support the project: https://buymeacoffee.com/mostafahanafy