Phase 1: VFM + SSMO基盤構築#1
Conversation
- DEVELOPMENT_PLAN-1.md, DEVELOPMENT_PLAN-2.md を移動 - CSS_OPTIONS.md (CSS実装オプション分析) を追加 - RESEARCH_THEMES.md (Vivliostyle Themes調査) を追加
- COST_ESTIMATE.md: GitHub Copilot利用時のコスト予測 - シナリオ別の費用見積もり(-150が標準的) - コスト最適化のヒントを含む
- Single Source Multi Output(1ソースからWeb/PDF/EPUB出力)を評価軸に - 推奨をオプションC(Vivliostyle Themes ベース)に変更 - 3形式出力を前提とした工数比較を追加 - 来訪者へのデモンストレーション効果を考慮
- @vivliostyle/vfm パッケージをインストール - gray-matter パッケージをインストール(frontmatter抽出用) - VFMカスタムローダー (src/loaders/vfm-loader.ts) を実装 - Content Collections設定 (src/content.config.ts) を追加 - 多言語対応(en/ja)のコレクション定義
- ヘッダー(ロゴ、ナビゲーション、言語切替) - サイドバー(スロット対応) - メインコンテンツエリア - フッター - レスポンシブ対応 - 印刷時のレイアウト調整
- ルートページで Accept-Language による言語検出 - 英語版トップページ (/en/) - 日本語版トップページ (/ja/) - astro.config.mjs にサイト設定・VFM対応設定を追加
- 英語版トップページ (content/en/index.md) - 日本語版トップページ (content/ja/index.md) - VFM記法のデモ(ルビ、セクション) - SSMO説明コンテンツ
- index.mdファイルのスラッグ生成で '.' が返される問題を修正 - ページでのドキュメント検索条件を修正
- GitHub Actions による自動デプロイ - main, astro-Install ブランチでトリガー - submodule対応
There was a problem hiding this comment.
Pull request overview
This PR implements Phase 1 of the docs2.vivliostyle.org project, establishing a foundation for Single Source Multi Output (SSMO) documentation that can generate Web, PDF, and EPUB formats from a single Markdown source. The implementation includes a custom VFM (Vivliostyle Flavored Markdown) loader for Astro Content Collections and SSMO-compatible CSS design.
Key Changes:
- Custom VFM loader for Astro Content Collections with multi-language support
- SSMO-compatible CSS using CSS variables and media queries for Web/PDF/EPUB output
- Language detection and routing system for English and Japanese content
- GitHub Actions workflow for automated deployment
Reviewed changes
Copilot reviewed 20 out of 24 changed files in this pull request and generated 11 comments.
Show a summary per file
| File | Description |
|---|---|
src/loaders/vfm-loader.ts |
Custom Astro loader for VFM Markdown conversion with frontmatter support |
src/content.config.ts |
Content Collections configuration for English and Japanese documentation |
src/layouts/DocsLayout.astro |
Main documentation layout with header, sidebar, and responsive design |
src/pages/index.astro |
Root page with client-side language detection and redirect |
src/pages/en/index.astro |
English language homepage with VFM content loading |
src/pages/ja/index.astro |
Japanese language homepage with VFM content loading |
public/styles/global.css |
SSMO-compatible global styles with Web/PDF/EPUB support via media queries |
content/en/index.md |
English homepage content with VFM syntax examples |
content/ja/index.md |
Japanese homepage content with VFM syntax examples |
astro.config.mjs |
Astro configuration with VFM external dependency handling |
package.json |
Project dependencies including VFM, Astro, and gray-matter |
.github/workflows/deploy.yml |
GitHub Pages deployment workflow with submodule support |
_investigation/*.md |
Comprehensive planning and research documentation |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
component definitely makes the instructions clearer and maintains consistency with Starlight's UI. I'll apply this change. Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
OKです。 Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
とhttp://localhost:4321/docs2.vivliostyle.org を開かなければならなくなっています。そこでそれを開いてみましたがスタイルシートが適用されないなどうまく動きません。スタイルシートへのリンクなどが commit 717b75d
が問題だと思います。 から に変更されていますが、公開予定のURLは 'https://docs2.vivliostyle.org' であるので、変更前が正しいです。https://vivliostyle.github.io/docs2.vivliostyle.org/ に公開するのではありません(GitHub Pagesのしくみでまずそこにできますがそれは公開しません)。 |
|
e53019dで対応しました。ご確認ください。 |
src/pages/index.astro も元に戻す必要があります。 717b75d#diff-95d291e9ce4c8739cc7e65ff7bf0838dd5294cf39ab787ba51a42d08fb2df663 の変更を元に戻すとよいと思います。 |
|
失礼しました。3ff2cb7で修正しました。 |
MurakamiShinyu
left a comment
There was a problem hiding this comment.
これでよいと思います。
あとはカスタムドメインを docs2.vivliostyle.org にする設定をすると https://docs2.vivliostyle.org/ でアクセスできるようになるはずです。
(vivliostyle.orgドメインのサブドメインdocs2のDNSレコードの設定をしておきました)
概要
docs2.vivliostyle.org の Phase 1 として、VFMカスタムローダーとSSMO対応CSSの基盤を構築しました。
変更内容
VFMカスタムローダー
@vivliostyle/vfmパッケージによるMarkdown→HTML変換SSMO対応CSS
@media printによる印刷/PDF用スタイルページ構造
CI/CD
確認方法
npm install npm run dev # http://localhost:4321/ にアクセス関連ドキュメント
_investigation/DEVELOPMENT_PLAN-2.md_investigation/CSS_OPTIONS.md次のステップ(Phase 2以降)