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

@chahuadev/dev-launcher

v4.0.2

Published

Chahuadev Dev Launcher binary package

Readme


license: other language:

  • en tags:
  • code-analysis
  • static-analysis
  • javascript
  • electron
  • emoji-cleaner
  • junk-sweeper
  • plugin-management
  • desktop-app
  • electron-app
  • security

Chahuadev Dev Launcher

Portable desktop command runner for development projects.

Purpose

  • Drop dev-launcher.exe inside a project folder.
  • Auto-detect project type from package.json and scripts.
  • Run grouped commands from one UI with full terminal output.
  • Optionally switch project root from the top bar (Select Project / Use Launcher Project).
  • Manage Cloudflare R2 upload flow for build artifacts (dev mode only).

Repository layout

  • main.js, preload.js, index.html, web/: Electron runtime + UI
  • build-desktop.bat: local desktop build script (build:linux and build:linux:wsl are launcher-managed at runtime)
  • dist/: desktop build outputs
  • packages/: npm publish package workspace

NPM publish package

The npm-uploadable package lives in:

  • packages/@chahuadev/dev-launcher/

This package is designed to:

  1. Download platform binary at install time (postinstall)
  2. Expose launcher CLI command (dev-launcher)
  3. Run downloaded binary from bin/

See package docs here:

  • packages/README.md
  • packages/@chahuadev/dev-launcher/README.md

NPM Install Commands (Published Package)

Global install on Windows:

npm install -g @chahuadev/dev-launcher --foreground-scripts --force

Global install on Linux:

sudo npm install -g @chahuadev/dev-launcher --foreground-scripts --force

Home Overview (Detailed)

Dev Launcher is now optimized for a fast Home-first workflow:

  • Home page renders immediately.
  • Project detection and command group loading run in the background.
  • Run tab is ready for command execution with real-time output.
  • Project root can be switched safely from header controls.

Recent major additions reflected in Home:

  • Header controls for root switching (Select Project, Use Launcher Project).
  • Protected OS-folder blocking policy for external project selection.
  • Main-process audited block events surfaced to renderer notice modal.
  • Safer command execution and external URL controls.
  • Improved build support, including V8 command path and Linux WSL fallback.
  • Better startup responsiveness by deferring heavy initialization.

Features Snapshot

  • Auto project detection for Electron, Expo/React Native, Next.js, Vite, and script-based npm projects.
  • One-click command groups for Metro, Gradle, ADB, Electron build scripts, and package scripts.
  • Real-time stdout/stderr streaming with ANSI color support.
  • Process-tree kill behavior for long-running child processes.
  • Optional external project-root selection with security policy checks.
  • R2 configuration, target suggestion, and upload workflow in-app (hidden in production binaries).

Security Snapshot

  • Context isolation enabled.
  • Node integration disabled in renderer.
  • Narrow IPC bridge via preload APIs.
  • Protected OS-directory project roots are blocked.
  • External URL allowlist enforcement.
  • Command allowlist enforcement before spawn.
  • Request/navigation/popup restrictions in production mode.
  • Audit logging with sensitive field redaction.

NPM Commands (Repository Source)

Install dependencies:

npm install

Run locally:

npm run start

Development run:

npm run dev

Build commands:

npm run build
npm run build-win
npm run build-exe
npm run build-v8
npm run build-nsis
npm run build-msi
npm run build:linux
npm run build:linux:wsl

Run launcher command:

dev-launcher

Home Content Expansion

The Home page currently presents this product definition:

  • Open Source and Free Forever.
  • Portable command runner for project-local workflows.
  • Auto-detection from package.json with no manual project setup.
  • Optional safe root switching from the app header.

Home stat strip values:

  • Project Types: 6
  • Terminal Output Coverage: 100%
  • Distribution Form: 1 portable executable
  • Configuration Required: Zero for baseline command usage

Home "What We Added" Details

  • Workflow: top-bar controls to select an external project root or return to launcher root.
  • Security: protected OS path blocking, audited block events, and stricter URL/command policy enforcement.
  • Startup: Home-first rendering with deferred background bootstrap.
  • Build: V8 build path exposure and Linux WSL resilience improvements.

Home Feature Cards (Detailed)

  • Auto Project Detection
    • Detects framework/runtime profile from dependency graph and scripts.
  • One-Click Commands
    • Grouped left-panel actions for Expo, Gradle, ADB, Electron, and NPM scripts.
  • Full Terminal Output
    • Streams command output in real time, including stderr, without hidden buffering loss.
  • Portable Single EXE
    • Designed for drop-in usage directly in target project folder.
  • Command Group Generator
    • Generates command sets from project type and script inventory.
  • Process Tree Kill
    • Terminates parent and child command processes to prevent orphan runners.

Home Flow Section (Step-by-Step)

  1. Place executable in the project root (next to package.json) and launch.
  2. Let Home render first while project data bootstraps in the background.
  3. Optionally switch root using Select Project, or return using Use Launcher Project.
  4. Select and execute commands from grouped panels and monitor full output stream.

Home Compatibility Matrix (Expanded)

  • Expo / React Native
    • Typical commands: expo start, expo run:android, expo prebuild
  • Android / Gradle
    • Typical commands: installDebug, assembleRelease, clean
  • React Native (Bare)
    • Typical behavior: Metro and Android Gradle groups when Android wrapper exists
  • Electron
    • Typical commands: npm run build, npm run build-win, npm run build-nsis, npm run dist
  • Next.js
    • Typical commands: npm run dev, npm run build, npm run start, npm run lint
  • Vite
    • Typical commands: npm run dev, npm run build, npm run preview
  • NPM Scripts
    • Additional scripts surfaced automatically from project package.json
  • ADB Utilities
    • Typical commands: adb devices, adb logcat, adb reverse tcp:8081 tcp:8081

Home Security Cards (Expanded)

  • Context Isolation enabled for renderer boundary hardening.
  • Node Integration disabled in renderer to reduce direct OS/runtime surface.
  • Main-process-only sensitive logic for command construction and execution.
  • Narrow preload bridge with explicit IPC methods for selection/run operations.
  • Protected OS path policy for project-root selection with formal user notice.
  • External access constrained by protocol and host policy.
  • Strict shell policy and no inline handler dependency in host shell UI.
  • Popup/navigation/request guard behavior in production.
  • Controlled process spawn model with allowlist checks.
  • Build-time credential hygiene for saved R2 config lifecycle.

Notes For Teams

  • Home page documentation should be treated as the UX-level contract.
  • README is the implementation-facing mirror of that contract.
  • When Home sections change, update this README section set to match.
  • Keep security policy statements aligned with main.js and preload.js IPC behavior.

💖 Support the Project

Chahuadev tools are 100% free and open-source. If this project helped you save time, please consider buying me a coffee to help keep the servers running!