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

ciraft

v1.0.0

Published

Generate production-grade CI/CD pipelines in seconds. Scans your repo, detects your stack, and outputs battle-tested configs.

Downloads

133

Readme


🤔 What is ciraft?

ciraft scans your project, detects the languages, frameworks, and tools you're using, and instantly generates a production-ready CI/CD pipeline — no YAML wrangling required.

Stop spending hours copying pipeline configs from Stack Overflow. Let ciraft do it in seconds.

⚡ Quick Start

Install

# npm
npm install -g ciraft

# npx (no install needed)
npx ciraft

# brew
brew install ciraft

Usage

# Navigate to your project and run
ciraft

# Or specify a directory
ciraft --path ./my-project

# Choose a specific CI provider
ciraft --provider github

# Dry run — preview without writing files
ciraft --dry-run

🎬 Demo

Run ciraft in a Node.js + Docker project and watch the magic happen:

$ ciraft

  🔥 ciraft v1.0.0
  ─────────────────────────────────────────

  📂 Scanning project: ./my-fullstack-app

  🔍 Detecting stack...
  ✔ Found: package.json        → Node.js (v20)
  ✔ Found: Dockerfile           → Docker
  ✔ Found: docker-compose.yml   → Docker Compose
  ✔ Found: jest.config.js       → Jest (testing)
  ✔ Found: .eslintrc.json       → ESLint (linting)
  ✔ Found: tsconfig.json        → TypeScript

  📋 Stack Summary
  ┌──────────────┬─────────────────────┐
  │ Category     │ Detected            │
  ├──────────────┼─────────────────────┤
  │ Language     │ TypeScript (Node.js)│
  │ Runtime      │ Node.js 20.x        │
  │ Package Mgr  │ npm                 │
  │ Testing      │ Jest                │
  │ Linting      │ ESLint              │
  │ Container    │ Docker + Compose    │
  └──────────────┴─────────────────────┘

  🏗️  Generating pipeline...

  ✔ Provider: GitHub Actions
  ✔ Created: .github/workflows/ci.yml
  ✔ Created: .github/workflows/docker-publish.yml

  📄 Generated Pipeline Preview:
  ┌─────────────────────────────────────────────────┐
  │ ci.yml                                          │
  ├─────────────────────────────────────────────────┤
  │ • Trigger: push to main, pull requests          │
  │ • Matrix: Node.js 20.x, 22.x                   │
  │ • Steps: checkout → install → lint → test       │
  │ • Caching: npm dependencies                     │
  │ • Artifacts: coverage report                    │
  ├─────────────────────────────────────────────────┤
  │ docker-publish.yml                              │
  ├─────────────────────────────────────────────────┤
  │ • Trigger: push to main (tags v*)               │
  │ • Steps: build → scan → push to GHCR            │
  │ • Security: Trivy vulnerability scan            │
  └─────────────────────────────────────────────────┘

  ✅ Done! Pipeline generated in 1.2s
  💡 Run "git add . && git push" to activate your pipeline

✨ Features

  • Auto-detection — Scans your project and detects languages, frameworks, and tools automatically
  • Production-ready — Generated pipelines include caching, matrix builds, and best practices
  • Multi-stack support — Node.js, Python, Go, Rust, Docker, and more
  • Multiple CI providers — GitHub Actions (more coming soon!)
  • Docker-aware — Detects Dockerfiles and generates build + push workflows
  • Security built-in — Includes vulnerability scanning and dependency audits
  • Dry-run mode — Preview generated pipelines before writing any files
  • Interactive mode — Step-by-step guided pipeline generation
  • Zero config — Works out of the box, no configuration files needed
  • Extensible — Easy to add support for new languages and frameworks

📦 Supported Stacks

| Stack | Detection | CI Pipeline | Docker | Security Scan | |-------|:---------:|:-----------:|:------:|:-------------:| | Node.js | ✅ | ✅ | ✅ | ✅ | | TypeScript | ✅ | ✅ | ✅ | ✅ | | Python | ✅ | ✅ | ✅ | ✅ | | Go | ✅ | ✅ | ✅ | ✅ | | Rust | ✅ | ✅ | ✅ | ✅ | | Docker | ✅ | ✅ | ✅ | ✅ | | Java | 🔜 | 🔜 | 🔜 | 🔜 | | Kotlin | 🔜 | 🔜 | 🔜 | 🔜 | | Ruby | 🔜 | 🔜 | 🔜 | 🔜 | | PHP | 🔜 | 🔜 | 🔜 | 🔜 | | .NET | 🔜 | 🔜 | 🔜 | 🔜 | | Swift | 🔜 | 🔜 | 🔜 | 🔜 | | Flutter | 🔜 | 🔜 | 🔜 | 🔜 | | Elixir | 🔜 | 🔜 | 🔜 | 🔜 |

🔜 = Coming soon! Want to help? Check out our Contributing Guide.

🏆 Why ciraft?

Comparison

| Feature | ciraft | Manual Setup | Starter Templates | |---------|:---------:|:------------:|:-----------------:| | Auto-detects your stack | ✅ | ❌ | ❌ | | Production-ready defaults | ✅ | ⚠️ Depends | ⚠️ Often outdated | | Docker pipeline generation | ✅ | ❌ Manual | ⚠️ Some templates | | Security scanning included | ✅ | ❌ Manual | ❌ Rarely | | Multi-language support | ✅ | N/A | ⚠️ One per template | | Caching optimized | ✅ | ⚠️ If you know how | ⚠️ Sometimes | | Time to working pipeline | ~5 seconds | 30-60 minutes | 10-15 minutes | | Keeps up with CI updates | ✅ | ❌ | ❌ | | Open source | ✅ | N/A | ⚠️ Sometimes |

Before ciraft 😩

# *googles "github actions node.js"*
# *copies from Stack Overflow*
# *pipeline fails*
# *spends 45 minutes debugging YAML indentation*
# *finally gets it working*
# *realizes you forgot Docker*
# *starts over*

After ciraft 🚀

$ npx ciraft
# Done. Go ship your code.

🔧 Configuration

ciraft works with zero configuration, but you can customize it with a .ciraftrc.json file:

{
  "provider": "github",
  "nodeVersions": ["20", "22"],
  "includeDocker": true,
  "includeSecurity": true,
  "caching": true,
  "artifacts": ["coverage"]
}

CLI Options

| Option | Description | Default | |--------|-------------|---------| | --path <dir> | Project directory to scan | . (current) | | --provider <name> | CI provider (github) | github | | --dry-run | Preview without writing files | false | | --interactive | Step-by-step guided mode | false | | --force | Overwrite existing pipelines | false | | --verbose | Show detailed detection output | false |

🤝 Contributing

We love contributions! ciraft is designed to be easy to contribute to, especially for adding new language and framework support.

👉 Read the Contributing Guide →

Quick Ways to Contribute

  • 🌐 Add a new languageSee how →
  • 🐛 Report a bugOpen an issue →
  • 💡 Request a featureOpen an issue →
  • 📖 Improve docs — PRs for documentation are always welcome!
  • Star the repo — It helps more than you think!

🎃 Hacktoberfest

ciraft is Hacktoberfest friendly! Look for issues labeled hacktoberfest and good first issue.

💖 Sponsors

ciraft is free and open source. If it saves you time, consider supporting the project:

📊 Star History

📄 License

MIT © 2026 Dhanush Nehru