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

@flout/sandbox

v0.3.2

Published

Multi-engine container sandbox for flout (Docker, Podman, nerdctl, Colima)

Readme

@flout/sandbox

Multi-engine container sandbox for @flout/cli. Manages container lifecycle — build images, start/stop containers, and exec into them. Supports Docker, Podman, and containerd (via nerdctl/Colima).

Usage

This package is a dependency of the main flout CLI. You don't need to install it directly.

import * as sandbox from '@flout/sandbox';

sandbox.start({ name: 'myproject', cwd: '/path/to/project', extraArgs: [], agent });
sandbox.stop({ name: 'myproject' });
sandbox.shell({ name: 'myproject' });
sandbox.claude({ name: 'myproject' });
sandbox.status();

Engine selection

The engine is auto-detected, preferring the fastest available option:

Linux: native Docker > Podman > Colima > nerdctl

macOS: Colima > Docker Desktop > Podman

Override with the engine option:

sandbox.start({ name: 'myproject', cwd: '/path/to/project', extraArgs: [], agent, engine: 'podman' });

Valid engines: docker, podman, nerdctl.

From the CLI: flout sandbox start --engine containerd (containerd maps to nerdctl).

Colima integration

On macOS (or Linux without a native engine), Colima is started automatically when needed. On Linux, sg kvm is used if the shell session lacks KVM group access.

Functions

| Function | Description | |----------|-------------| | start({ name, cwd, extraArgs, agent, engine? }) | Build image if needed, start container with project mounted | | stop({ name, engine? }) | Stop a running container (resolves by label or full ID) | | shell({ name, engine? }) | Exec into a container, landing in the project directory | | claude({ name, engine? }) | Exec into a container and launch Claude directly | | status(engine?) | List all flout containers and their state | | resolveContainer(query, engine?) | Find a container by label or full name, with disambiguation | | detectEngine(preferred?) | Detect the best available container engine | | normalizeEngine(input) | Map user-facing engine name to internal type (containerd -> nerdctl) |

Container conventions

  • Image: flout-sandbox (built from an embedded Dockerfile on first run; bundles both Claude and opencode)
  • Container name: flout-<MMdd-HHmmss>-<label> (label defaults to project directory basename)
  • Mount: host project dir to /home/dev/<basename>
  • Auth: mounts ~/.claude and ~/.local/share/opencode for credential persistence
  • Git: passes through user.name and user.email as env vars
  • Trust: auto-creates the Claude trust directory for the mounted path

Extra engine flags can be passed via extraArgs (exposed as -- in the CLI).

License

GPL-2.0