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

lynch

v0.0.1

Published

Download and execute bash scripts.

Downloads

92

Readme

lynch

Download and execute bash scripts from URLs or GitHub repositories with cross-platform support.

Overview

lynch is a command-line tool that allows you to download and execute bash scripts directly from URLs or from the n-p-x GitHub organization repositories. It provides cross-platform support for Linux, macOS, and Windows (with Git Bash/WSL), and can also execute YAML Taskfiles.

Installation

Global Installation

npm install -g lynch

One-time Execution

npx lynch <url|script-name> [args...]

Usage

Basic Syntax

lynch <url|script-name> [args...]

Examples

1. Execute a script from a direct URL

lynch https://example.com/setup.sh
lynch https://raw.githubusercontent.com/user/repo/main/install.sh --verbose

2. Execute a script from the n-p-x/e repository (default)

lynch my-script
lynch deploy-app production

3. Execute a script from a specific n-p-x repository

lynch docker/setup-container
lynch terraform/deploy-infrastructure us-east-1

4. Execute YAML Taskfiles

lynch https://example.com/Taskfile.yml build
lynch tasks/build-project

Platform Support

Linux & macOS

  • bash (preferred)
  • sh (fallback)

Windows

  • Git Bash (recommended)
  • WSL bash (Windows Subsystem for Linux)
  • PowerShell (limited support, not yet implemented)

Features

  • Cross-platform compatibility - Works on Linux, macOS, and Windows
  • Multiple shell support - Automatically detects and uses available shells
  • GitHub integration - Easy execution of scripts from n-p-x repositories
  • Taskfile support - Execute YAML-based task files using @go-task/cli
  • Temporary execution - Scripts are downloaded to temp directory and cleaned up
  • Error handling - Comprehensive error messages and troubleshooting guidance
  • Cache-busting - Always downloads fresh copies of scripts

Repository Structure

The tool supports scripts from the n-p-x GitHub organization:

  • Default repository: n-p-x/e
  • Custom repositories: n-p-x/{repo-name}

URL Resolution Examples

| Input | Resolved URL | |-------|-------------| | my-script | https://raw.githubusercontent.com/n-p-x/e/main/my-script | | docker/setup | https://raw.githubusercontent.com/n-p-x/docker/main/setup | | https://example.com/script.sh | https://example.com/script.sh |

Requirements

Linux/macOS

  • Node.js (for lynch)
  • bash or sh shell

Windows

  • Node.js (for lynch)
  • One of the following:
    • Git for Windows (includes Git Bash) - Recommended
    • Windows Subsystem for Linux (WSL)
    • PowerShell (limited support)

Troubleshooting

"No compatible shell found" Error

On Windows:

  1. Install Git for Windows (includes Git Bash)
  2. Install Windows Subsystem for Linux (WSL)

On Linux:

# Ubuntu/Debian
sudo apt install bash

# CentOS/RHEL/Fedora
sudo yum install bash
# or
sudo dnf install bash

On macOS:

# Using Homebrew
brew install bash

Download Errors

  • Check your internet connection
  • Verify the URL is accessible
  • Ensure the script exists in the specified repository

Development

Building from Source

git clone https://github.com/asfandyarsheikh/lynch.git
cd lynch
npm install
npm run build

Project Structure

├── src/
│   └── index.js          # Main application logic
├── dist/                 # Compiled output (generated)
├── package.json          # Package configuration
├── tsup.config.js        # Build configuration
└── README.md            # This file

License

ISC License

Author

Asfandyar Sheikh

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Related Projects