Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
667 changes: 667 additions & 0 deletions skills/hyperframes/templates/presentations/8-bit-orbit/summary.html

Large diffs are not rendered by default.

1,646 changes: 1,646 additions & 0 deletions skills/hyperframes/templates/presentations/8-bit-orbit/template.html

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
{
"slug": "8-bit-orbit",
"name": "8-Bit Orbit",
"tagline": "Pixel-art neon arcade aesthetic on a deep navy void.",
"mood": ["retro-tech", "playful", "cyberpunk", "energetic"],
"occasion": [
"gaming pitch",
"hackathon demo",
"web3 / crypto deck",
"indie product launch",
"developer tools",
"synthwave brand"
],
"tone": ["geeky", "neon", "rebellious", "sci-fi"],
"formality": "low",
"density": "medium",
"palette": {
"neon_pink": "#F0A6CA",
"neon_cyan": "#5EDCF4",
"neon_yellow": "#F4D03F",
"deep_navy": "#0F1B3D",
"void": "#0A0E27",
"lavender": "#E2D5F2",
"description": "deep navy/black void with neon pink, cyan, and yellow pops; pixel art accents and CRT-monitor energy"
},
"typography": {
"display": "Tektur",
"body": "Chakra Petch",
"mono": "Space Mono",
"style": "boxy display sans paired with technical mono, all unmistakably digital and pixel-flavored"
},
"scheme": "dark",
"best_for": "Anything that should feel like a CRT screen at 2am: cyberpunk, gaming, web3, indie dev tools, hackathon demos. Just as good for a tech talk that wants to lean into nostalgic-digital craft, a synthwave brand deck, or a creative review that wants to feel like a console.",
"avoid_for": "Contexts where the dark neon palette would actively work against the message \u2014 quiet institutional finance disclosures, healthcare patient-facing materials, traditional luxury.",
"slide_count": 10,
"navigation": "inline keyboard handler with on-page nav dots and slide counter"
}
40 changes: 40 additions & 0 deletions skills/hyperframes/templates/presentations/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# Presentation templates

Vendored from [zarazhangrui/beautiful-html-templates](https://github.com/zarazhangrui/beautiful-html-templates) and tokenized for the HyperFrames design picker.

## Attribution

All `template.html`, `summary.html`, `template.json`, and `deck-stage.js` files
in this directory are derived from the upstream `beautiful-html-templates`
library. Original work by [@zarazhangrui](https://github.com/zarazhangrui).
Please refer to the upstream repository for license terms.

## What we changed

- **Tokenization.** Hard-coded palette colors were rewired to the
`--tp-primary` / `--tp-secondary` / `--tp-tertiary` / `--tp-accent` CSS
custom-property contract so the picker can re-theme each template at render
time. See [`../../references/design-picker.md`](../../references/design-picker.md)
for the full token contract.
- **`deck-stage.js` lint cleanup.** Unused `catch` parameter bindings replaced
with bare `catch {}` for the repo's eslint pass. No behavioral change.
- **Per-template fixes.** A handful of templates received targeted fixes to
the cover headlines, palette swatches, slide-rendering classes, and orphan
`@import` lines so they render cleanly inside the picker's iframes. The
fixes live in the picker chrome PR — these files in this directory are the
baseline import.

The hand-crafted `design.html` files for each template (`<slug>/design.html`)
are _not_ upstream content — those are new work for the HyperFrames design
picker and live in a separate PR.

## Adding a new template

1. Add the template directory under `presentations/<slug>/` with at minimum
`template.html`, `summary.html`, and `template.json`.
2. Run `python3 ../../scripts/tokenize-templates.py <slug>` to inject the
`--tp-*` contract.
3. Write a `design.html` for the new template (see existing examples).
4. Register the slug in `../index.json` and `../presentations-index.json`.
5. Verify with `hyperframes pick` (requires `HYPERFRAMES_DESIGN_PICKER=1`
outside dev mode).

Large diffs are not rendered by default.

Loading
Loading