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 🙏

© 2025 – Pkg Stats / Ryan Hefner

@abullard/akio

v1.2.2

Published

Quickly retrieve forgotten package.json script commands

Readme

Akio

Free your brain from npm script chaos–Akio helps you search, understand, and run your project scripts fast.

Example


Quick setup

I recommend using akio directly from the npm registery to get familiar with its monorepo functionality. See Documenting Scripts below to populate your scriptDescriptions.

# using this DevX tool is as easy as running:
npx @abullard/akio

🎯 Target a Package

Akio can target a package with the @pkg syntax:

# find commands from the ui package
akio @ui

# to target root package.json
akio @root

Targeting requires your package.json files live at the root of your package. e.g.

  • ../ui/package.json
  • ../api/package.json
  • ../smoke/package.json

🔍 Search Without Flags

Akio treats the first unnamed CLI argument as a search term:

# search for scripts containing the text "build":
akio build

# search the api package for scripts containing the text "test":
akio @api test

# order doesn't matter
akio coverage @ui

⚙️ CLI Options

| Long Name | Short Name | Description | | ---------------- | ---------- | --------------------------------------------- | | --descriptions | -d | Hide missing script descriptions warning | | --format | -f | Strip colors & emojis from output | | --help | -h | Print a help menu | | --input | -i | Don't prompt user to run a command | | --pin | -p | Pin your version, this skips the update check |


🚀 Global Install

npm install -g @abullard/akio

📝 Documenting Scripts

Add a scriptDescriptions section to your package.json:

{
    "scripts": {
        "dev": "vite",
        "build": "vite build",
        "test:integration": "vitest ./tests/integration/**/*.spec.ts",
    },
    "scriptDescriptions": {
        "dev": "Starts the dev server",
        "build": "Builds the project for production",
        "test:integration": "Test that the application works when all components are integrated.",
    },
}

No more guessing what test:integration does.

💪 Suggested Usage Methods

For the best UX, use it as an alias in your .zshrc so you can fetch with just akio:

# $(npm prefix -g) will fetch your global install location, locking the app version
alias akio="$(npm prefix -g)/bin/akio"

# if you always want the latest version, and have a stable network connection
alias akio="npx @abullard/akio"

Example in package.json:

"scripts": {
  "akio": "npx @abullard/akio"
}

🎬 Inferred Package Manager

  • Akio works best with pnpm, but supports npm and yarn. Please setup pnpm-workspace.yml for proper Target a Package functionality.
  • akio infers which package manager to use based on your lockfile:

| akio uses | file present in repo | | --------- | -------------------- | | pnpm | pnpm-lock.yaml | | yarn | yarn.lock | | npm run | package-lock.json |

🧠 Best Used For

  • Dev teams with lots of internal scripts
  • Open source projects that skimp on docs
  • Onboarding new teammates
  • Old projects you forgot how to run

🛣️ On the Roadmap

  • Auto deploy GHA & README badges
  • JSONC-style inline comments

🪪 License

MIT