@compn3rd/pi-web-pendant-theme

Pendant-inspired theme for PI WEB: Source Sans 3 body font, Press Start 2P pixel accents, sharp corners, flat surfaces, subtle pixel grid. Includes 6 dark variants (Amber CRT, Green Phosphor, Cyan/Teal, Nearly Monochrome, Muted Everything, plus the origin

Packages

Package details

theme

Install @compn3rd/pi-web-pendant-theme from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:@compn3rd/pi-web-pendant-theme
Package
@compn3rd/pi-web-pendant-theme
Version
0.3.0
Published
Aug 14, 2026
Downloads
566/mo · 29/wk
Author
compn3rd
License
MIT
Types
theme
Size
759.6 KB
Dependencies
0 dependencies · 0 peers

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

README

PI WEB Pendant Theme

A Pendant-inspired theme pack for PI WEB with retro 8-bit aesthetics: sharp corners, flat surfaces, a subtle pixel grid, Source Sans 3 body font, and Press Start 2P pixel accents on section headers.

Version 0.3 and later targets PI WEB's browser plugin API v2. PI WEB releases that reject browser API v1 will not discover older 0.2.x packages.

Command logos

When a Pendant theme is active, bash tool cards (tool-execution-viewsection.tool-card) get an unobtrusive brand logo in their title, matching the first token of the command to a Simple Icons slug — the same idea as the Pendant VS Code extension.

  • 247 commands mapped across git, shells, every major language/runtime, package managers, build tools, test runners, linters, bundlers, containers, Kubernetes, IaC, clouds, databases, and observability tools.
  • 124 brand icons (Simple Icons, CC0) + 13 hand-crafted generic glyphs (symbol:search, symbol:cloud, symbol:hammer, symbol:terminal, …) for commands with no brand mark.
  • The bash tool title is visually replaced with the tool's name (Git, uv, PDM, Python, PyPI, Rust, Docker, …); generic glyphs keep bash.
  • cd <dir> && <cmd> / cd <dir>; <cmd> prefixes are stripped, so cd ~/repo && git push shows the Git logo.
  • Pendant Dark and Pendant Light use each brand's official hex; all experiment themes (Amber CRT, Green Phosphor, Cyan/Teal, Nearly Monochrome, Muted Everything) desaturate logos to --pi-text-secondary so they stay on-palette.
  • Fully gated behind the Pendant theme toggle: switching to a stock theme strips every logo and restores the original bash title.

The mapping + icon path data live in logos/manifest.json (commandToSlug, brands, symbols). Brand icons are CC0 (Simple Icons); the generic symbol:* glyphs are MIT-licensed part of this plugin. Brand logos are trademarks of their owners and are used here only to identify tools the agent is running.

Themes

This package contributes 7 themes to PI WEB's theme picker:

Theme Description
Pendant Dark Original dark palette (blue accent, green success, red danger)
Pendant Light Light variant
Amber CRT Pitch black bg, warm amber glow — old monochrome terminal
Green Phosphor Deep black bg, classic matrix green — green-screen retro
Cyan/Teal Near-black bg, cool cyan accents — modern-retro hybrid
Nearly Monochrome Pure grayscale — every accent is a different shade of gray
Muted Everything Desaturated hints at ~5–10% saturation

All dark themes share the same structural styling: sharp border-radius: 0, flat surfaces (no box-shadows), image-rendering: pixelated, and a 32px subtle pixel-grid background.

Fonts are bundled as WOFF2/TTF (no external requests):

  • Source Sans 3 (variable) — body text
  • Source Code Pro (variable) — code
  • Press Start 2P — section header arcade kickers

Installation

Via Pi (recommended)

pi install -g @compn3rd/pi-web-pendant-theme

Then reload the PI WEB browser tab and select a Pendant theme from the theme picker (gear icon or action palette). If upgrading from package version 0.2.x after a PI WEB upgrade, update/reinstall the package and hard-reload the tab so the v2 browser entry is discovered.

Manual

Clone or symlink into ~/.pi-web/plugins/pendant/:

mkdir -p ~/.pi-web/plugins
git clone https://github.com/CompN3rd/pi-web-pendant-theme.git ~/.pi-web/plugins/pendant

Hard-reload the PI WEB browser tab.

Fonts & assets

File License
fonts/SourceSans3VF-* SIL OFL 1.1
fonts/SourceCodeVF-* SIL OFL 1.1
fonts/PressStart2P-Regular.ttf SIL OFL 1.1
logos/manifest.json brand icons CC0 1.0 — from Simple Icons
logos/manifest.json symbol:* glyphs MIT (this plugin)

Development

git clone https://github.com/CompN3rd/pi-web-pendant-theme.git
cd pi-web-pendant-theme
# edit pi-web-plugin.js, then symlink for live testing:
ln -s "$PWD" ~/.pi-web/plugins/pendant
# hard-reload browser

Tests

npm test    # parser, command-logo layout, and PI WEB browser-v2 package contracts

The source-contract tests check fixed logo sizing, SVG containment, PI WEB API version, required browser metadata, and module-relative asset URLs. They do not compute browser layout or load the package in PI WEB. Computed dimensions, responsive widths, DOM injection/re-render behavior, and theme transitions still require manual testing against a live PI WEB instance.

Rebuilding the icon manifest

logos/manifest.json is generated from simple-icons (CC0) plus hand-crafted symbol:* glyphs. To regenerate after bumping the Simple Icons set:

node scripts/build-manifest.js

License

MIT — plugin code and the symbol:* generic glyphs. Fonts have their own OFL licenses (see above). Brand icons in logos/manifest.json are CC0 from Simple Icons; the brand marks themselves are trademarks of their owners, used here only to identify which tool the agent is running.