プロジェクト構造と規約(Kecare)
どんな技術スタックやフレームワークでも、VueでもReactでもSvelteでも、従来のサーバーサイドレンダリングフレームワークでも、 どんな古いプロジェクトでも、あるいは自分が好きな技術スタックで作成した新しいプロジェクトでも、.kecareディレクトリを新規作成するだけで、ブログに変身します。 定義したルールに基づいて、ブログページを生成します。
1. ディレクトリ構造
Kecare-theme/ # 主题根目录(themeDir)
├─ .kecare/ # Kecare 约定目录()
│ ├─ articles/ # 文章源文件(Markdown)
│ │ ├─ hello-kecare.md
│ │ └─ ...
│ └─ menus/ # 菜单源文件(TypeScript)
│ │ ├─ kecare-docs.menu.source.ts
│ │ └─ ...
│ └─ en-US.trans.ts # 英文翻译配置文件
│
...
.kecare/ は Kecare システムの中で最も重要な部分です:執筆者のコンテンツはここに置き、メニューもここに置き、テーマ作者もデフォルトでここからコンテンツを取得します、にぇ~
2. .kecare/ ディレクトリの規約
2.1 .kecare/articles/:記事ディレクトリ
- 位置固定:テーマディレクトリ/.kecare/articles/
- ファイルタイプ:現在は
*.mdのみサポート - 推奨命名:安定した、読みやすい英語のファイル名を使用(例:
getting-started.md)、頻繁な名前変更は避けてください
なぜファイル名をむやみに変更しない方が良いのですか?
Kecareの一般的な実装では、記事の id はファイル名のハッシュから生成されることが多く、それによって安定したリンクが形成されます
ファイル名が変わった → id が変わる可能性あり → 古いリンクが無効になる可能性あり、にゃん~
2.2 .kecare/menus/:メニューディレクトリ
- 位置固定:テーマディレクトリ/.kecare/menus/
- ファイル名固定:
*.menu.source.ts - ファイル内容の約束:navItems: NavItem[] をエクスポートする
3. テーマ層でのデータの消費方法(テーマ作者向け)
Kecareのジェネレータは通常、記事を構造化されたオブジェクト配列(例えば articles: Article[])に解析します。