SuperAPI AI Directory

export-standalone

Frontend & websites

View repository

Updated 10-15 20:07

About this skill

Export Standalone

Produce a single HTML file that works offline (no external dependencies). Uses monolith — a Rust CLI that inlines everything.

Preflight

  1. Bash(which monolith) — check installed. If missing:
    • Tell user: "monolith not found. Install with brew install monolith (macOS) and rerun."
    • Stop.

Steps

  1. Resolve paths:
    • $0 = input HTML (required)
    • $1 = output HTML (default: <input>-standalone.html)
    • Bash(mkdir -p $(dirname <output>)) if needed
  1. Run monolith:

    Bash(monolith "<input>" --isolate --no-metadata -o "<output>")
    

    Flags:

    • --isolate — CSP to prevent any remote resource loads after bundling
    • --no-metadata — strip <!-- saved from ... --> metadata
  2. Report:

    • Bash(stat -f%z "<output>") or Bash(ls -la "<output>") for size
    • "Bundled <input> → <output> (<size> KB). Works offline."

Tradeoffs

  • Pros: single file, drop in email/chat, no CDN dependency, survives archive
  • Cons: larger file size (5-10× original), no HMR, fonts often inlined as base64 (bigger)
  • Interactivity preserved (React + Babel still run at load time), but network fetches fail by design