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

@spatio-labs/spatio

v0.0.1

Published

Spatio - Plugin-based spatial computing CLI

Readme

Spatio CLI

A plugin-based spatial computing CLI for building custom terminal workspaces.

Quick Start

# Install dependencies
npm install

# Start Spatio in current directory
npm run start

# Or build and run
npm run build
./dist/cli.js start

Architecture

Spatio follows the VSCode/Vim plugin model:

  • CLI Binary: Global spatio command
  • Plugin Directory: ~/.spatio/plugins/ (hidden directory)
  • Registry System: Dynamic pane type registration
  • Event Bus: Inter-pane communication
  • Workspaces: Project-specific configurations

Plugin Directory Structure

~/.spatio/
├── plugins/                    # Installed plugins
│   ├── developer-suite/
│   │   ├── pane.json          # Plugin manifest
│   │   └── index.js           # Plugin code
│   └── trading-tools/
├── config/
│   ├── settings.json          # Global settings
│   └── keybindings.json       # Custom keybindings
└── workspaces/
    └── recent.json            # Recent workspace list

Commands

# Workspace Management
spatio start                         # Start local workspace (current directory)
spatio start global                  # Start global workspace (multi-directory)
spatio workspace list                # List workspaces
spatio workspace create my-project   # Create workspace

# Plugin Management
spatio plugin list                   # List installed plugins
spatio plugin install developer-suite # Install plugin
spatio plugin create my-plugin       # Create new plugin

# Development
spatio plugin install . --dev        # Install local plugin for development

Workspace Modes

Local Mode: spatio start

  • Workspace tied to current directory
  • Perfect for project-specific work
  • Filesystem-based organization

Global Mode: spatio start global

  • Work across multiple directories simultaneously
  • Spatial organization independent of filesystem
  • Perfect for cross-project workflows
  • Navigate between different codebases in one workspace

Core Components

Registry (src/core/registry.ts)

Central registry for all pane types and plugins. Supports:

  • Dynamic pane type registration
  • Plugin lifecycle management
  • Type safety with TypeScript

Event Bus (src/core/event-bus.ts)

Inter-pane communication system with:

  • Request/response patterns
  • Event history
  • Subscription management
  • Targeted and broadcast events

Plugin Loader (src/core/plugins/enhanced-plugin-loader.ts)

Advanced plugin system supporting:

  • Directory-based plugins
  • NPM package plugins
  • Permission system
  • Hot reloading (development mode)

Pane Manager (src/ui/pane-manager.ts)

Zellij-style pane management with:

  • Dynamic layouts
  • Focus management
  • Keyboard navigation
  • Modal dialogs for pane selection

Plugin Development

Creating a Plugin

spatio plugin create my-awesome-plugin
cd my-awesome-plugin
spatio plugin install . --dev

Plugin Manifest (pane.json)

{
  "name": "my-plugin",
  "version": "1.0.0",
  "displayName": "My Awesome Plugin",
  "description": "Does awesome things",
  "author": "Your Name",
  "main": "index.js",
  "categories": ["utilities"],
  "permissions": ["filesystem"],
  "spatioVersion": "^1.0.0"
}

Plugin Code Structure

module.exports = {
  name: 'my-plugin',
  version: '1.0.0',
  paneTypes: [{
    type: 'my-pane',
    name: 'My Pane',
    description: 'Custom pane implementation'
  }],
  async init(registry) {
    registry.registerPaneType({
      type: 'my-pane',
      name: 'My Pane',
      description: 'Custom pane implementation',
      constructor: MyPaneClass,
      category: 'utilities'
    });
  }
};

Key Features

  • Zero Built-in Panes: Clean architecture with no hardcoded pane types
  • Advanced Plugin Architecture: Enhanced plugin loader with permissions
  • Event Bus: Full inter-pane communication system
  • Zellij-style UI: Complete pane manager with focus, resize, navigation
  • Plugin SDK: TypeScript definitions and development tools
  • ~/.spatio Directory: VSCode/Vim-style plugin management

Development

The Spatio CLI provides a clean, plugin-based foundation for building spatial computing applications.

Running in Development

npm run dev    # Watch mode
npm run build  # Build for production
npm start      # Run built version

Architecture Goals

  1. Plugin Ecosystem: Like VSCode extensions or Vim plugins
  2. Spatial Computing: Organize information in 2D workspace
  3. Terminal Native: Full keyboard navigation, no mouse required
  4. Extensible: Third-party developers can create pane types
  5. Professional: Production-ready plugin system and APIs

Plugin Ecosystem

Plugins are maintained in separate repositories:

  • Core Panes: @spatio/core-panes - Essential pane types (charts, logs, terminal)
  • Developer Tools: @spatio/developer-suite - Git integration, process monitor, file watcher
  • Custom Plugins: Community-created pane types and tools

Install plugins with:

spatio plugin install @spatio/core-panes
spatio plugin install @spatio/developer-suite