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

@raulfdm/homelab-cli

v0.2.0

Published

A command-line tool for self-hosting utilities and deployment automation. Currently supports triggering deployments for [Dokploy](https://dokploy.com) applications.

Downloads

16

Readme

homelab-cli

A command-line tool for self-hosting utilities and deployment automation. Currently supports triggering deployments for Dokploy applications.

Installation

Install globally via npm:

npm install -g @raulfdm/homelab-cli

Or use with npx (no installation required):

npx @raulfdm/homelab-cli --help

Usage

Trigger Dokploy Deployment

The primary feature is triggering deployments for Dokploy applications. You can provide configuration through environment variables, CLI flags, or a combination of both.

Using Environment Variables

# Set environment variables
export DOKPLOY_SERVER_DOMAIN="https://your-dokploy-server.com"
export DOKPLOY_API_KEY="your-api-key"
export DOKPLOY_APP_ID="your-application-id"

# Trigger deployment
homelab deploy trigger

Using CLI Flags

homelab deploy trigger \
  --app-id "your-application-id" \
  --server-domain "https://your-dokploy-server.com" \
  --api-key "your-api-key"

Mixed Approach (CLI flags override environment variables)

# Use env vars for sensitive data, flags for app-specific values
export DOKPLOY_API_KEY="your-api-key"
homelab deploy trigger \
  --app-id "your-application-id" \
  --server-domain "https://your-dokploy-server.com"

Available Commands

  • deploy trigger: Trigger a deployment for a Dokploy application
  • --help: Show help information for any command

Configuration Options

| CLI Flag | Environment Variable | Description | Required | | ----------------- | ----------------------- | ------------------------ | -------- | | --app-id | DOKPLOY_APP_ID | Application ID to deploy | ✅ | | --server-domain | DOKPLOY_SERVER_DOMAIN | Dokploy server URL | ✅ | | --api-key | DOKPLOY_API_KEY | Dokploy API key | ✅ |

Development

Prerequisites

  • Bun v1.3.6 or higher
  • Node.js (for runtime compatibility)

Setup

  1. Clone the repository:

    git clone <repository-url>
    cd sh-cli
  2. Install dependencies:

    bun install

Development Workflow

Running locally during development

# Run the CLI directly with Bun
bun run src/cli.ts --help

# Example: Test deploy command
bun run src/cli.ts deploy --help

# Example: Test trigger deployment command
bun run src/cli.ts deploy trigger --help

Building the project

# Build for distribution
bun run build

This will compile the TypeScript source to the dist/ directory.

Code formatting

# Format code
bun run fmt

# Check formatting without modifying files
bun run fmt:check

Testing your changes

  1. Build the project: bun run build
  2. Test the built version: node bin/run.js --help
  3. Or install globally for testing: npm install -g .

Project Structure

sh-cli/
├── bin/
│   └── run.js               # Entry point for the published CLI
├── src/
│   ├── cli.ts               # Main CLI interface
│   └── modules/
│       └── deploy/
│           ├── index.ts     # Deploy command module
│           └── trigger.ts   # Deployment trigger functionality
├── dist/                    # Built JavaScript files (generated)
├── package.json            # Package configuration
└── README.md              # This file

Adding New Commands

  1. Create a new module in src/modules/
  2. Import and integrate it in src/cli.ts
  3. Update the CLI help text and flags as needed
  4. Add tests and documentation

Publishing

This project uses Changesets for version management:

# Add a changeset (describes your changes)
npx changeset

# Version packages (updates version and changelog)
npx changeset version

# Publish to npm
npm publish

The build process runs automatically before publishing via the prepublish script.