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

@deploid/cli

v2.0.20

Published

Build → package → sign → publish web apps to Android

Downloads

1,562

Readme

Deploid

From build to publish — one command.

Deploid automates the entire process of turning a web app into a ready-to-ship Android package.

🚀 Quick Start

# Install globally
npm install -g @deploid/cli

# Initialize a project
deploid init

# Initialize with full app metadata (non-interactive)
deploid init --app-name "NineGrid" --app-id "dev.madsens.ninegrid" --author-name "Chris Madsen" --author-email "[email protected]" --description "NineGrid Sudoku app" --assets-source "public/logo.png"

# Add your logo
cp your-logo.svg assets/logo.svg

# Generate all required assets
deploid assets

# Override source for one run
deploid assets --source public/logo.png

# Scaffold release config
deploid release init --yes

# Package for Android
deploid package

# Build APK/AAB
deploid build

# Deploy to connected device
deploid deploy

# Setup Firebase for push notifications
deploid firebase

# Manage plugins
deploid plugin --list
deploid plugin --install storage
deploid plugin --remove debug-network

# Publish to stores
deploid publish --dry-run

# Bump semver + Android version metadata
deploid version --patch

# Turn release notes into CHANGELOG entries
deploid changelog --from-git

# Run the full release workflow
deploid ship --patch --from-git --dry-run

# Inspect generated outputs
deploid artifacts list
deploid artifacts --list

# Scaffold a custom plugin
deploid plugin init hello-world

# Run the local API daemon for external apps
deploid daemon

# Generate GitHub Actions release workflow
deploid ci init github

✨ Features

  • 🖼️ Asset Generation: Automatic icon generation for all Android densities and PWA
  • 📦 Multi-Engine Packaging: Capacitor, Tauri, and TWA support
  • 🔨 Build System: APK/AAB generation with signing
  • 🚦 Release Setup: Signing, env, and publish scaffolding with deploid release init
  • ☁️ Publishing: Play Store and GitHub Releases integration
  • 🧱 Plugin Authoring: Scaffold and validate custom plugins
  • 🔌 Local API Daemon: Optional loopback HTTP mode for external apps
  • 🔧 Plugin Architecture: Extensible and modular design
  • 💾 Cross-Platform Storage: Seamless storage across web and native environments
  • 🔥 Firebase Integration: Automated push notification setup
  • 📱 Native Deployment: Direct APK installation to devices
  • 🍎 iOS Preparation: Generate Xcode projects for Mac handoff

💾 Cross-Platform Storage

Deploid includes built-in cross-platform storage utilities that work seamlessly across web and native environments:

# Install storage plugin during init
deploid init
# Select "Cross-platform storage utilities" when prompted

Usage

import { crossPlatformStorage } from './lib/storage'
import { secureStorageUtil } from './lib/secureStorage'

// Store data
await crossPlatformStorage.set('theme', 'dark')
await secureStorageUtil.set('authToken', 'secret-token')

// Retrieve data
const theme = await crossPlatformStorage.get('theme')
const token = await secureStorageUtil.get('authToken')

Features:

  • 🌐 Web: Uses localStorage/sessionStorage
  • 📱 Native: Uses Capacitor Preferences + Secure Storage
  • 🔒 Security: Encrypted storage for sensitive data
  • 🔄 Migration: Easy transition from existing localStorage

🔧 Plugin Management

Deploid includes a powerful plugin system that you can manage after initialization:

# List all available plugins
deploid plugin --list

# Install a specific plugin
deploid plugin --install storage
deploid plugin --install debug-network
deploid plugin --install packaging-electron

# Remove a plugin
deploid plugin --remove debug-network

# Scaffold a custom plugin
deploid plugin init hello-world

# Validate a plugin package
deploid plugin validate ./plugins/hello-world

# Interactive plugin manager
deploid plugin

Available Plugins

  • 📦 Assets - Generate app icons and assets (required)
  • 📱 Packaging - Capacitor, Tauri, TWA support (required for packaging)
  • 🖥️ Electron - Desktop packaging for Windows, macOS, and Linux
  • 🔨 Build - Android APK/AAB generation
  • 📲 Deploy - Direct device deployment via ADB
  • 🍎 iOS - iOS project preparation for Mac handoff
  • 🐛 Debug - Network debugging tools
  • 💾 Storage - Cross-platform storage utilities

🎯 Supported Frameworks

  • Vite (React, Vue, Svelte)
  • Next.js (Static export)
  • Create React App
  • Static HTML projects

📦 Supported Packaging Engines

  • Capacitor - Native WebView wrapper
  • Tauri - Rust-based desktop/mobile (planned)
  • TWA - Trusted Web Activity (planned)

🧩 Commands

| Command | Description | | -------------------- | ------------------------------------------- | | deploid init | Setup config and base folders | | deploid release init | Scaffold signing, env templates, and publish placeholders | | deploid version | Sync semver, Android version metadata, and release notes scaffolding | | deploid changelog | Turn release notes into CHANGELOG.md entries | | deploid ship | Run the end-to-end Android release workflow | | deploid artifacts | List, inspect, and clean generated outputs | | deploid plugin init | Scaffold a custom plugin package | | deploid daemon | Run the local Deploid HTTP daemon | | deploid ci init github | Generate GitHub Actions release workflow scaffolding | | deploid assets | Generate all required icons and screenshots | | deploid package | Wrap app for Android (Capacitor/Tauri/TWA) | | deploid electron | Setup Electron desktop packaging | | deploid build | Build APK/AAB (debug/release) | | deploid publish | Upload build to Play Store or GitHub |

📚 Documentation

🎯 Current Status

Milestone 1 — Core CLI + Capacitor (Complete)

  • [x] Config loader + basic CLI
  • [x] Assets (icons) generation with Sharp
  • [x] Capacitor packaging
  • [x] Debug APK build system

🔄 Next: Milestone 2 — Release + CI

  • [x] Signing + release scaffolding
  • [x] Play/GitHub publishing
  • [x] Version orchestration
  • [x] Auto GitHub Actions generator

🧠 Vision

"Turn any web app into a publishable Android app with one command — including icons, signing, builds, and release automation."

The long-term goal: Expand to multi-platform (Windows .exe, macOS DMG, iOS IPA, and Web Deploy).

📄 License

MIT © MadsenDev

🤝 Contributing

Contributions are welcome! Please see our Contributing Guide for details.

📞 Support


Made with ❤️ by MadsenDev