Skip to content

Repository files navigation

The Pocket Museum

museum.pocketlab.build — the permanent collection of Pocket Lab: every machine PocketJS runs on, from a 1983 NES to an ESP32-P4, with its hardware, the upstream bring-up documents rendered verbatim, and example code.

Exhibits src/data/devices/*.ts — curated hardware sheets, plaque text, photographs with credits
Upstream external/pocketjs — a pinned git submodule of pocket-stack/pocketjs; bring-up docs, target profiles, board files, blog metadata and example code are read from it at build time
Stack Vue 3 · Vite · vue-router · vite-ssg (static pages) · Tailwind CSS v4 · markdown-it + shiki at build time
Design DESIGN.md — principles, palette, type, layout, components
Working rules CLAUDE.md (AGENTS.md is a symlink)

Develop

git clone --recurse-submodules --shallow-submodules <this repo>
bun install
bun run dev          # generate OG cards, then serve http://localhost:5173
bun run og:generate  # regenerate the ignored public/og/ preview assets
bun run check        # typecheck + OG generation + static build into dist/

If the submodule is missing (external/pocketjs empty), run bun run upstream:init. To follow upstream main: bun run upstream:update, then commit the submodule bump.

How a page is made

src/data/devices/vita.ts ──┐
                           ├─> pages (Vue) ─> vite-ssg ─> dist/devices/vita/index.html
external/pocketjs/hosts/vita/README.md ──?doc──> plugins/pocketjs-docs.ts ─┘
external/pocketjs/contracts/spec/platforms.ts ── imported directly ────────┘

The plugin turns upstream markdown into HTML on the markdown-it token stream (anchors, absolute links back to the pinned revision, shiki-highlighted fences) — no regular expressions touch the source text, and nothing is copied into this repository.

Deploy

bun run build writes a fully static site to dist/ (nested index.html per route), including one content-hashed 1200×630 PNG social card per indexable page. Any static host works; museum.pocketlab.build is expected to serve dist/ as-is.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages