Skip to main content

Generate an isometric city-skyline fingerprint banner (SVG) from a local git repository.

Project description

repoglyph

OKF

tests coverage

repoglyph banner

Isometric repo-city banners from a local git clone. Each file is a building: size drives height, type drives color, recent commits light windows.

Offline port of repoglyph.net; hosted (free) customization explorer and web-cached banners there.

Install

uv tool install "repoglyph[png]"   # standalone CLI on PATH
pip install "repoglyph[png]"       # CLI in the active environment
uv add --dev "repoglyph[png]"      # project dev dependency (CI, hooks)

Each installs the repoglyph command. Python 3.12+. Drop the png extra for SVG-only output.

Usage

repoglyph                 # current repo w/ defaults
repoglyph ../project
repoglyph . --style skyline --palette neon

Writes <repo>/.glyph/<owner>_<repo>_<style>.svg, plus a PNG with the png extra.

All flags
Flag Default Meaning
--commits N 50 commits used for lit windows
--style NAME oblique oblique, skyline, or highrise
--palette NAME|FILE light built-in theme or palette JSON
--size WxH 1280x480 canvas size
--full off fit canvas to the whole city
--out FILE auto output SVG path
--out-dir DIR <repo>/.glyph folder for all outputs
--no-png off skip PNG output
--skip-commons off drop lockfiles from the city
--staged off draw HEAD + staged changes
--okf [DIR] off write an OKF context bundle
--skill off add a SKILL.md to the OKF bundle
--cache off save repo data for --from-cache

repoglyph --help for the rest.

Styles
  • oblique: flat cabinet-oblique map (default)
  • skyline: one building per file
  • highrise: one tower per district, floors are subdirs

OKF

--okf writes markdown context files from the same repo data: an index, repository and hotspot summaries, and one file per district.

Add --skill and point it at a skills folder to ship the bundle as a self-updating map-of-the-codebase agent skill:

repoglyph . --okf .claude/skills/repo-map --skill

That one command is the whole install: Claude Code discovers anything under .claude/skills/ automatically. Commit the folder and every clone has it.

This repo is also a Claude Code plugin marketplace for itself; the plugin ships a usage skill so Claude knows how to run repoglyph:

claude plugin marketplace add remsky/repoglyph-py
claude plugin install repoglyph@repoglyph
Limits
  • Shows folder structure, not runtime architecture.
  • Lit windows use the sampled commit window, not full history.
  • File bytes proxy size.

Contributing

See CONTRIBUTING.md.

License

Apache-2.0. Bundled Monaspace Xenon fonts are SIL OFL.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

repoglyph-0.1.0.tar.gz (97.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

repoglyph-0.1.0-py3-none-any.whl (114.8 kB view details)

Uploaded Python 3

File details

Details for the file repoglyph-0.1.0.tar.gz.

File metadata

  • Download URL: repoglyph-0.1.0.tar.gz
  • Upload date:
  • Size: 97.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for repoglyph-0.1.0.tar.gz
Algorithm Hash digest
SHA256 6ba12ff55e448acddfddb769dfe5c8ba7e4bfc0e60d280fbd25476d01e7aa955
MD5 ab5b5ab0b86fe49bc0af324bda9f323e
BLAKE2b-256 d65af14070e08bd4f141b444b67cc6cc16f2ff646f507abcc8e1f311d674949c

See more details on using hashes here.

File details

Details for the file repoglyph-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: repoglyph-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 114.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for repoglyph-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2f04c4a2c03213ac318b82adcec155b0acf75292e3fdaac3f7580ae8c7f1b774
MD5 cc73d930d4d1123514bac586d739ffdb
BLAKE2b-256 656f4a1d345d9584cb8f68225aabd2355585dd91d67887ffda1cae75b793a2cb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page