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

@qvac/cli

v0.2.3

Published

Command-line interface for the QVAC ecosystem

Downloads

1,768

Readme

QVAC CLI

A command-line interface for the QVAC ecosystem. QVAC CLI provides tooling for building, bundling, and managing QVAC-powered applications.

This package is published to npm as @qvac/cli and lives in the QVAC monorepo at packages/cli. Older instructions may refer to the deprecated qvac-cli package name—use @qvac/cli instead.

Table of Contents

Installation

Install globally:

npm i -g @qvac/cli

Once installed, use the qvac command:

qvac <command>

Or run directly via npx:

npx @qvac/cli <command>

Command Reference

bundle sdk

Generate a tree-shaken Bare worker bundle containing the plugins you select (defaults to all built-in plugins).

qvac bundle sdk [options]

What it does:

  1. Reads qvac.config.* from your project root (if present)
  2. Resolves enabled plugins from the plugins array (defaults to all built-in plugins if omitted)
  3. Generates worker entry files with static imports only
  4. Bundles with bare-pack --linked
  5. Generates addons.manifest.json from the bundle graph

Options:

| Flag | Description | |------|-------------| | --config, -c <path> | Config file path (default: auto-detect qvac.config.*) | | --host <target> | Target host (repeatable, default: all platforms) | | --defer <module> | Defer a module (repeatable, for mobile targets) | | --quiet, -q | Minimal output | | --verbose, -v | Detailed output |

Examples:

# Bundle with default settings (all platforms)
qvac bundle sdk

# Bundle for specific platforms only
qvac bundle sdk --host darwin-arm64 --host linux-x64

# Use a custom config file
qvac bundle sdk --config ./my-config.json

# Verbose output for debugging
qvac bundle sdk --verbose

Output:

| File | Description | |------|-------------| | qvac/worker.entry.mjs | Standalone/Electron worker with RPC + lifecycle | | qvac/worker.bundle.js | Final bundle for mobile runtimes (Expo/BareKit) | | qvac/addons.manifest.json | Native addon allowlist for tree-shaking |

Note: Your project must have @qvac/sdk installed.

Configuration

The CLI reads configuration from qvac.config.{json,js,mjs,ts} in your project root.

If no config file is found, the CLI bundles all built-in plugins.

Note: qvac.config.ts is supported via tsx internally (no user setup required).

This file is primarily the SDK runtime config, but qvac bundle sdk also reads this bundler-only key (ignored by the SDK at runtime):

| Key | Type | Required | Description | |-----|------|----------|-------------| | plugins | string[] | No | Module specifiers, each ending with /plugin (defaults to all built-in plugins) |

Custom plugin contract: custom */plugin modules must default-export the plugin object.

Built-in plugins:

@qvac/sdk/llamacpp-completion/plugin
@qvac/sdk/llamacpp-embedding/plugin
@qvac/sdk/whispercpp-transcription/plugin
@qvac/sdk/parakeet-transcription/plugin
@qvac/sdk/nmtcpp-translation/plugin
@qvac/sdk/onnx-tts/plugin
@qvac/sdk/onnx-ocr/plugin
@qvac/sdk/sdcpp-generation/plugin

Example configurations:

// qvac.config.json - LLM only
{
  "plugins": [
    "@qvac/sdk/llamacpp-completion/plugin"
  ]
}
// qvac.config.json - Multiple plugins
{
  "plugins": [
    "@qvac/sdk/llamacpp-completion/plugin",
    "@qvac/sdk/whispercpp-transcription/plugin",
    "@qvac/sdk/nmtcpp-translation/plugin"
  ]
}

Development

Prerequisites:

  • Node.js >= 18.0.0
  • npm or bun

Run locally:

# From packages/cli after a build
bun run build
node ./dist/index.js bundle sdk

# Or link globally for testing
npm link
qvac bundle sdk

License

This project is licensed under the Apache-2.0 License - see the LICENSE file for details.