Slidevで作成したスライドをNuxtアプリ上で公開するサイトです
- Slidevでスライド作成
- CIで静的アセット生成(HTML / PNG / JSON)
- Nuxtで一覧・詳細ページを提供
- Cloudflare Workersでホスティング
nuxt/ # フロントエンドアプリケーション
slides/ # Slidevプロジェクト群
scripts/ # ビルドスクリプト
nuxt/public/slides # ビルドされたスライド(CI生成)
nuxt/public/slides.json # ビルドされたスライドの一覧
pnpm installpnpm --dir nuxt devpnpm build:slidespnpm builddeploy ブランチにはスライドの生成物が入っている。Nuxt のビルドと Worker へのアップロードは nuxt/ で行う。
cd nuxt
NUXT_PUBLIC_SITE_URL=https://slides.shade4827.net/ pnpm deployビルド済みの出力をローカルの Workers ランタイムで確認する場合:
cd nuxt
pnpm build
pnpm preview:cf- slides/slides/ にディレクトリを作成し、slides.md を作成。もしくはtemplateディレクトリをコピー
slides/slides/my-slide/
└── slides.md
- CIが自動で以下を生成
- HTML
- サムネイル画像
- slides.json
- /slide-view/my-slide/ で公開される
pnpm dev slides/[directory]/slides.md
- mainブランチにpush
- GitHub ActionsでSlidevをビルド
- 生成物をdeployブランチにpush
- Cloudflare Workers が
deployブランチをビルドしてデプロイする