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

shellreq

v0.4.1

Published

A lightweight terminal-native API testing tool.

Readme

⚡ ShellReq

A lightweight, interactive terminal-native API testing tool for developers.

Fast. Scriptable. Beautiful TUI. Zero vulnerabilities.

npm version Status License Node.js


Why ShellReq?

ShellReq brings the power of a modern API client directly into your terminal workflow — no heavy GUI apps needed.

  • Interactive TUI — Full-screen terminal UI for managing requests.
  • Fast CLI — Fire HTTP requests instantly without leaving your terminal.
  • Git Friendly — Save requests as shell scripts or CI/CD steps.
  • Environment Support — Use .env files for multi-environment testing.
  • Zero Config — Install and start testing immediately.
  • Secure — All dependencies pinned to exact versions, 0 known vulnerabilities.

Installation

npm install -g shellreq

Or run instantly with npx:

npx shellreq ui

Interactive TUI

Launch the full-screen terminal UI:

shellreq ui

Features:

  • Tab-based navigation: Editor → Response → History → Collections
  • Method selector (GET, POST, PUT, PATCH, DELETE)
  • JSON body editor for POST/PUT/PATCH
  • Response viewer with status, timing, headers, and formatted body
  • Auto-saves last 50 requests to history
  • Collections for saving frequently used requests
  • Keyboard shortcuts: TAB switch tab, ENTER send request, Q quit

CLI Usage

GET request

shellreq get https://jsonplaceholder.typicode.com/posts/1

POST with JSON body

shellreq post https://jsonplaceholder.typicode.com/posts --json '{"title":"Hello","body":"World"}'

Custom headers

shellreq get https://api.example.com/data -H "Authorization: Bearer TOKEN"

Verbose mode (show response headers)

shellreq get https://jsonplaceholder.typicode.com/posts/1 --verbose

DELETE

shellreq delete https://jsonplaceholder.typicode.com/posts/1

Environment Variables

Create a .env file in your project root:

API_URL=https://jsonplaceholder.typicode.com

Use placeholders in commands:

shellreq get "{{API_URL}}/posts/1"

VS Code Extension

ShellReq is also available as a VS Code sidebar extension — a full API client without leaving your editor.

Download ShellReq API Client on VS Code Marketplace


Tech Stack

  • HTTP — Node.js built-in http/https (CLI & extension)
  • TUIInk (React for CLI)
  • CLI ParsingCommander.js
  • StylingChalk
  • EnvironmentDotenv

Changelog

v0.4.1

  • Security & Stability: Removed axios from the NPM package, replacing it completely with native Node.js http/https modules.
  • Dependency Cleanup: Eliminated unnecessary native module overrides (http, https, url) from dependencies to prevent supply chain risks.
  • Brought CLI networking on par with the VS Code extension for full consistency and safety.

v0.4.0

  • Fixed VS Code extension webview: reliable tab switching and draggable splitter (mouse/touch) across platforms.
  • Hardened webview scripting to avoid CSP/DOM timing issues and improved state sync with the extension host.
  • Improved request handling and error reporting in the extension's network layer.
  • Bumped package versions for CLI and extension; updated release notes and READMEs.

v0.3.0

  • Removed ink-box and ink-gradient (eliminated high CVE from cross-spawn chain)
  • Pinned all dependencies to exact versions — 0 known vulnerabilities
  • Replaced axios in TUI with native fetch (Node 18+)
  • Fixed backgroundColor prop errors in Ink components
  • Fixed dotenv.config() options compatibility
  • Added vitest.config.ts to exclude VS Code extension tests from npm test run
  • Updated React to 18.x for Ink 5.x compatibility

v0.2.0

  • Interactive TUI with tab navigation
  • History and Collections persistence
  • Split-pane response viewer

v0.1.x

  • Initial CLI release with GET, POST, PUT, PATCH, DELETE
  • Environment variable support via .env

Contributing

Open issues or PRs on GitHub.


License

MIT