Communityライティング&編集github.com

HTMLスライドショースキル

1つの自己完結型・最小化されたHTMLファイルにまとめられたレスポンシブスライドショーを作成するためのスキルです。Bunを使用してビルドします。

HTMLスライドショースキル とは?

このスキルは、HTMLとCSS、JavaScriptを使ってレスポンシブなスライドショーを作成し、Bunでビルドすることで1つの自己完結型・最小化されたHTMLファイルにバンドルします。開発者はテンプレートをコピーし、スライドをHTMLの `<section class="slide">` として追加し、カスタムCSS/JSは外部ファイルとしてリンクしてから、Bunスクリプトでビルドするだけで、配布可能な単一ファイルが生成されます。主な特徴として、コンテナユニット(cqw/cqh)による完全なレスポンシブ対応、px単位の不使用、印刷時の自動ライトパレット切り替え、スライドごとのディープリンク、オーバービューモードなどがあります。このスキルはClaude CodeやCursorなどのAIエージェント向けに設計されており、プレゼンテーション、レッスン、デモ、ステータス更新、ピッチなど、1画面に1コンテンツを表示するユースケースに最適です。開発者が手動で面倒なビルド設定やレスポンシブ対応を行う必要がなく、AIエージェントが指示に従って自動的にスライドショーを作成・ビルドできるように設計されています。

対応~Claude Code~Codex CLI~Cursor
npx skills add xarunoba/skills

Installed? Explore more ライティング&編集 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

html-slideshow

1つの自己完結型・最小化された .html にバンドルされたレスポンシブスライドショーです。 スライドはHTMLで作成し、エンジン(assets/base.css + base.js)とBunビルドによって最終ファイルを生成します。Bunが必要です。

ワークフロー

  1. ランタイムを確認 — bun --version(不足している場合はbun.shからインストール、1.4.0で確認済み)。
  2. テンプレートをコピー — assets/base.html、assets/base.css、assets/base.js をユーザーのワークスペース内のデッキフォルダにコピーします(同じ階層に配置)。.html は自由にリネームできます(例:my-deck.html)。base.css と base.js は .html からの相対パスで参照されるため、リネームする場合は参照を更新する必要があります。
  3. タイトルを設定 — .html 内の <title> を編集します。デッキはデフォルトで暗いテーマで表示されます。印刷時は自動的に強制的に明るいパレットに切り替わります。
  4. スライドを追加 — <main id="deck"> 内に、1スライドにつき1つの <section class="slide"> を追加します。
    <section class="slide">
      <h2>四半期実績</h2>
      <ul><li>売上高が24%増加</li></ul>
    </section>
    
  5. カスタムCSS/JS — リンクファイルのみ、インラインは不可。 .html に <style> または <script> ブロックを追加しないでください。.html にはページの骨格とスライドコンテンツのみを保持し、ビルドがリンクされたファイルを最終的な自己完結型ファイルにインライン化します。これにより、ソースを編集可能に保ち、エンジンを単一ソースにできます。カスタムコードを配置する2つの適切な場所:base.css / base.js を直接編集するか、デッキ固有のスタイリングや動作をエンジンから分離したい場合は、<link rel="stylesheet" href="extra.css"> / <script src="extra.js" defer></script> を追加します(ビルドがインライン化します。base.* は可能な限り変更しないでください — references/bundling-assets.md を参照)。(references/slide-patterns.md のレシピはこれに従っています。)
  6. コンテナユニットでサイズ指定 — px は絶対に使用しない。 各スライドはCSSクエリコンテナであるため、cqw/cqh/cqmin と clamp() を使用すると、コンテンツはあらゆる画面にスケーリングします。px/pt はレスポンシブ性を損なうため使用しないでください(外側のフレームは svh を使用)。これはエージェントが間違えがちな唯一のルールです。完全なガイドは references/responsive-units.md を参照してください。 ポートレートビューポートは自動的に処理されます。スライドはランドスケープキャンバスでレンダリングされ、収まるようにスケーリングされるため、ワイドなテーブルやグリッドが電話画面からはみ出すことはありません(--slide-w/--slide-h を :root に設定、デフォルトは 16/9)。
  7. ビルド — スキルのビルドスクリプトを実行します:bun scripts/build.js my-deck.html(bun build --compile --target=browser --minify my-deck.html --outdir dist をラップします。Bunが動作するOSならどこでも動作します)→ dist/my-deck.html:CSS、JS、および参照されたアセットがインライン化された、単一で最小化された自己完結型ファイルが生成されます。これが配布するファイルです。
  8. ビルドされたファイルを検証 — ブラウザツールで dist/my-deck.html を file:// URLで開きます。合格条件:コントロールが表示されること。ArrowRightでカウンターが "2 / N" に進み、location.hash が #2 に設定されること。約400×800のビューポートでも1つのスライドが完全にレターボックス表示されること。O でオーバービューが切り替わること。印刷メディアエミュレーションで1ページに1スライドが表示されること。シグナルは references/using-the-deck.md に文書化されています。ブラウザツールがない場合は、視覚的な検証をスキップしたことを明記してください。
  9. クリーンアップ — ビルド出力以外に作成されるものはありません。my-deck.html、base.css、base.js(編集可能なソース)を dist/my-deck.html(配布するファイル)の隣に保持します。ユーザーが単一ファイルのみを希望する場合は、dist/my-deck.html をデッキが置かれるべき場所に移動し、デッキフォルダはそのソースとして保持します。

リファレンス一覧

必要に応じて参照 — 一度にすべてを読む必要はありません。

  • references/using-the-deck.md — セットアップ、スライド契約、完全なナビゲーション、ディープリンク(#5 でスライド5を開く、#some-id でそのidを持つスライドを開く、引用→ソースに使用)、ビルド、印刷。
  • references/slide-patterns.md — 既製のスライドレシピ+作成ガイダンス。
  • references/responsive-units.md — px を使わない流体サイズ設定ガイド。
  • references/bundling-assets.md — インラインSVG / データURIアセット(ビルドは相対参照もインライン化します)。
  • references/engine-anatomy.md — エンジン(base.html / base.css / base.js)のマップ。変更時に参照。
  • examples/quickstart.html — 完成したデッキ(ソース。ビルドして自己完結型ファイルを生成)。
  • examples/README.md — サンプルデッキの2つの形式(読み取り可能なソース vs ビルドされたスタンドアロン)と、編集後にスタンドアロンを再ビルドする方法。

使用するタイミング

出力を一度に1画面ずつ表示したい場合:トーク、レッスン、デモ、ステータス更新、ピッチ。スクロールする散文やドキュメントには使用しません。

関連スキル