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 🙏

© 2025 – Pkg Stats / Ryan Hefner

wiki-plugin-allyabase

v0.0.5

Published

Allyabase management plugin for the federated wiki

Readme

wiki-plugin-allyabase

Allyabase management plugin for Federated Wiki.

This plugin provides a convenient interface for launching and monitoring your local Allyabase instance directly from the wiki.

Features

  • Launch a Base: One-click button to run the allyabase_setup.sh script
  • Service Healthcheck: Real-time monitoring of all 14 miniservices
  • Auto-refresh: Status updates every 30 seconds
  • Service Details: Shows port and HTTP status for each service
  • Federated Emojishortcodes: Decentralized resource discovery using emoji-based identifiers (see FEDERATION.md)
  • Federated BDO Resolution: Cross-wiki BDO (Basic Data Object) fetching using emoji-based identifiers

Services Monitored

The plugin monitors the following services:

  • julia (port 3000)
  • continuebee (port 2999)
  • fount (port 3002)
  • bdo (port 3003)
  • joan (port 3004)
  • addie (port 3005)
  • pref (port 3006)
  • dolores (port 3007)
  • prof (port 3008)
  • covenant (port 3011)
  • minnie (port 2525)
  • aretha (port 7277)
  • sanora (port 7243)
  • wiki (port 3333)

Installation

npm install wiki-plugin-allyabase

Configuration

The plugin includes the allyabase_setup.sh script bundled within the package, so no external dependencies are required. The script will be run from the plugin's installation directory.

Usage

Add the plugin to your wiki page by creating an allyabase item. The plugin will display:

  1. A "Launch a Base" button to start all services
  2. A status panel showing which services are running
  3. Automatic health checks with visual indicators (✅/❌)

API Endpoints

Allyabase Management

POST /plugin/allyabase/launch

Launches the allyabase setup script.

GET /plugin/allyabase/healthcheck

Returns the current health status of all services.

GET /plugin/allyabase/status

Returns the overall base status including last launch time.

Service Proxies

All allyabase services are accessible via proxy routes:

  • /plugin/allyabase/julia/* → julia service
  • /plugin/allyabase/bdo/* → bdo service
  • /plugin/allyabase/fount/* → fount service
  • (and so on for all 14 services)

Federated BDO Endpoints

GET /plugin/allyabase/bdo/emoji/:emojicode

Fetch a BDO by its emojicode, with automatic federation support.

Emojicode Format: 💚[3-location-emoji][5-uuid-emoji]

Example: 💚☮️🌙🎸🔔🔫🕕🕓🚅

How it works:

  1. Extracts the 9 emoji from the emojicode
  2. First emoji (💚) is the federation prefix
  3. Next 3 emoji identify the wiki location (e.g., ☮️🌙🎸)
  4. Remaining 5 emoji identify the BDO UUID
  5. Looks up the location identifier in the federation registry
  6. If the BDO is on this wiki, fetches locally
  7. If the BDO is on a remote wiki, forwards the request automatically

Response:

{
  "emojicode": "💚☮️🌙🎸🔔🔫🕕🕓🚅",
  "pubKey": "029dd60e726cbcc00fc486e158751d290172cc92733a3be4a5d18a2ef07e097f73",
  "bdo": {
    "data": "Test BDO data",
    "timestamp": 1761676196398
  },
  "createdAt": 1761676196526
}

Key Features:

  • Automatic cross-wiki resolution
  • Location-based routing using emoji identifiers
  • Transparent local vs. remote detection
  • Compatible with Docker networking (host.docker.internal)

Federation

The plugin includes a federated emojishortcode system for decentralized resource discovery. See FEDERATION.md for complete documentation.

POST /plugin/allyabase/federation/register

Register a location identifier for this wiki.

GET /plugin/allyabase/federation/location/:identifier

Get the URL for a specific location identifier.

GET /plugin/allyabase/federation/locations

Get all registered location mappings.

POST /plugin/allyabase/federation/resolve

Resolve a federated shortcode to a full URL.

POST /plugin/allyabase/federation/parse

Parse a federated shortcode without resolving it.

Development

This plugin follows the standard wiki-plugin structure:

  • client/allyabase.js - Client-side code for the wiki interface
  • server/server.js - Server-side endpoints for launching and monitoring
  • factory.json - Plugin metadata

License

MIT