create-riebeckite 0.0.19 → 0.0.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/README_ja.md +1 -1
- package/dist/src/index.js +24 -24
- package/dist/src/scaffold/index.js +24 -24
- package/dist/src/scaffold/version.d.ts +1 -1
- package/dist/src/scaffold/wrangler-defaults.d.ts +1 -1
- package/package.json +2 -2
- package/templates/scaffold/base/app/global.d.ts +9 -3
- package/templates/scaffold/base/app/server.ts +2 -2
- package/templates/scaffold/base/vite.config.ts +3 -25
- package/templates/scaffold/presets/empty/app/routes/_404.tsx +18 -0
- package/templates/scaffold/presets/empty/app/routes/_renderer.tsx +1 -1
- package/templates/scaffold/presets/empty/app/routes/index.tsx +1 -1
- package/templates/scaffold/presets/empty/app/style.css +11 -0
- package/templates/scaffold/presets/minimal/app/routes/[slug{.+}].tsx +13 -32
- package/templates/scaffold/presets/minimal/app/routes/_404.tsx +18 -0
- package/templates/scaffold/presets/minimal/app/routes/_renderer.tsx +17 -53
- package/templates/scaffold/presets/minimal/app/routes/index.tsx +9 -19
- package/templates/scaffold/presets/minimal/app/style.css +13 -21
- package/templates/scaffold/presets/minimal/content/index.en.md +16 -6
- package/templates/scaffold/presets/showcase/app/components/site-header.tsx +10 -64
- package/templates/scaffold/presets/showcase/app/routes/[slug{.+}].tsx +15 -34
- package/templates/scaffold/presets/showcase/app/routes/_404.tsx +18 -0
- package/templates/scaffold/presets/showcase/app/routes/_renderer.tsx +31 -49
- package/templates/scaffold/presets/showcase/app/routes/index.tsx +19 -25
- package/templates/scaffold/presets/showcase/app/style.css +26 -42
- package/templates/scaffold/presets/showcase/content/Daily/2026-09-28.md +8 -0
- package/templates/scaffold/presets/showcase/content/Daily/2026-09-30.md +8 -0
- package/templates/scaffold/presets/showcase/content/Daily/2026-10-02.md +11 -0
- package/templates/scaffold/presets/showcase/content/index.de.md +16 -5
- package/templates/scaffold/presets/showcase/content/index.en.md +16 -5
- package/templates/scaffold/presets/showcase/content/index.es.md +16 -5
- package/templates/scaffold/presets/showcase/content/index.fr.md +16 -5
- package/templates/scaffold/presets/showcase/content/index.ja.md +16 -5
- package/templates/scaffold/presets/showcase/content/index.ko.md +16 -5
- package/templates/scaffold/presets/showcase/content/index.zh-CN.md +16 -5
- package/templates/scaffold/presets/starter/app/components/site-header.tsx +10 -64
- package/templates/scaffold/presets/starter/app/routes/[slug{.+}].tsx +15 -34
- package/templates/scaffold/presets/starter/app/routes/_404.tsx +18 -0
- package/templates/scaffold/presets/starter/app/routes/_renderer.tsx +31 -49
- package/templates/scaffold/presets/starter/app/routes/index.tsx +17 -25
- package/templates/scaffold/presets/starter/app/style.css +26 -42
- package/templates/scaffold/base/app/config.ts +0 -18
- package/templates/scaffold/base/app/constants/paths.ts +0 -10
- package/templates/scaffold/base/app/content.ts +0 -12
package/README.md
CHANGED
|
@@ -36,9 +36,9 @@ The prompts ask, in order:
|
|
|
36
36
|
|
|
37
37
|
`Separate GitHub repository` also asks for the content and site repositories,
|
|
38
38
|
and GitHub Actions deployment is then configured for you. That setup is covered
|
|
39
|
-
in the [content repository guide](../../docs/docs/guides/content-repositories.
|
|
39
|
+
in the [content repository guide](../../docs/docs/guides/content-repositories.md).
|
|
40
40
|
Deployment can be added later, described in
|
|
41
|
-
[Deployment](../../docs/docs/getting-started/deployment.
|
|
41
|
+
[Deployment](../../docs/docs/getting-started/deployment.md).
|
|
42
42
|
|
|
43
43
|
## Options
|
|
44
44
|
|
|
@@ -94,7 +94,7 @@ npx create-riebeckite my-site --github-actions \
|
|
|
94
94
|
Set `content.directory` to `"content"`, add the documented repository secrets,
|
|
95
95
|
then copy `github/notify-site.yml` into the content repository as
|
|
96
96
|
`.github/workflows/notify-site.yml`. See the [separate-content deployment
|
|
97
|
-
guide](https://github.com/Rerurate514/riebeckite/blob/main/docs/docs/guides/deployment/separate-content-repository.
|
|
97
|
+
guide](https://github.com/Rerurate514/riebeckite/blob/main/docs/docs/guides/deployment/separate-content-repository.md).
|
|
98
98
|
|
|
99
99
|
`--content-repository` automatically configures the external checkout, the
|
|
100
100
|
`content-updated` repository-dispatch receiver, and `github/notify-site.yml`.
|
package/README_ja.md
CHANGED
|
@@ -35,7 +35,7 @@ npm exec riebeckite build
|
|
|
35
35
|
| Content source | `This project`、`Separate GitHub repository` | 最初は `This project` |
|
|
36
36
|
| デプロイ設定 | `GitHub Actions + Cloudflare Workers`、`Not now` | 手元で試すなら `Not now` |
|
|
37
37
|
|
|
38
|
-
`Separate GitHub repository` を選ぶと content と site のリポジトリ名も入力し、GitHub Actions のデプロイ設定が自動で構成されます。この構成は[content repository ガイド](../../docs/docs/guides/content-repositories.md)に、デプロイの追加方法は [Deployment](../../docs/docs/getting-started/deployment.md) にあります。
|
|
38
|
+
`Separate GitHub repository` を選ぶと content と site のリポジトリ名も入力し、GitHub Actions のデプロイ設定が自動で構成されます。この構成は[content repository ガイド](../../docs/docs/guides/content-repositories.ja.md)に、デプロイの追加方法は [Deployment](../../docs/docs/getting-started/deployment.ja.md) にあります。
|
|
39
39
|
|
|
40
40
|
## オプション
|
|
41
41
|
|
package/dist/src/index.js
CHANGED
|
@@ -633,7 +633,7 @@ var minimalTheme = {
|
|
|
633
633
|
};
|
|
634
634
|
var empty = {
|
|
635
635
|
name: "empty",
|
|
636
|
-
description: "A blank
|
|
636
|
+
description: "A blank canvas with only the Riebeckite wiring. Add the theme, plugins, and content yourself.",
|
|
637
637
|
languages: [],
|
|
638
638
|
theme: null,
|
|
639
639
|
plugins: [],
|
|
@@ -642,7 +642,7 @@ var empty = {
|
|
|
642
642
|
};
|
|
643
643
|
var minimal = {
|
|
644
644
|
name: "minimal",
|
|
645
|
-
description: "The smallest
|
|
645
|
+
description: "The smallest readable site, for learning how a Riebeckite site is assembled.",
|
|
646
646
|
languages: ["en"],
|
|
647
647
|
theme: minimalTheme,
|
|
648
648
|
plugins: [obsidianMarkdown],
|
|
@@ -651,7 +651,7 @@ var minimal = {
|
|
|
651
651
|
};
|
|
652
652
|
var starter = {
|
|
653
653
|
name: "starter",
|
|
654
|
-
description: "Recommended
|
|
654
|
+
description: "Recommended default: a practical Markdown garden with search, navigation, and reading essentials.",
|
|
655
655
|
languages: [...SCAFFOLD_LANGUAGES],
|
|
656
656
|
theme: defaultTheme,
|
|
657
657
|
plugins: [
|
|
@@ -679,7 +679,7 @@ var starter = {
|
|
|
679
679
|
};
|
|
680
680
|
var showcase = {
|
|
681
681
|
name: "showcase",
|
|
682
|
-
description: "
|
|
682
|
+
description: "A feature-rich example that demonstrates the Riebeckite plugin ecosystem with rendered samples and references.",
|
|
683
683
|
languages: [...SCAFFOLD_LANGUAGES],
|
|
684
684
|
theme: showCaseTheme,
|
|
685
685
|
plugins: [
|
|
@@ -1189,8 +1189,8 @@ import path3 from "node:path";
|
|
|
1189
1189
|
|
|
1190
1190
|
// src/scaffold/content-pages.ts
|
|
1191
1191
|
var HELPERS = {
|
|
1192
|
-
en: "https://github.com/Rerurate514/riebeckite/blob/main/docs/README.
|
|
1193
|
-
ja: "https://github.com/Rerurate514/riebeckite/blob/main/docs/README.md"
|
|
1192
|
+
en: "https://github.com/Rerurate514/riebeckite/blob/main/docs/README.md",
|
|
1193
|
+
ja: "https://github.com/Rerurate514/riebeckite/blob/main/docs/README.ja.md"
|
|
1194
1194
|
};
|
|
1195
1195
|
var PLUGIN_INDEX_URL = "https://github.com/Rerurate514/riebeckite/tree/main/packages/plugins";
|
|
1196
1196
|
var THEMES_INDEX_URL = "https://github.com/Rerurate514/riebeckite/tree/main/packages/themes";
|
|
@@ -1349,7 +1349,7 @@ var PLUGIN_MARKDOWN_GUIDES = {
|
|
|
1349
1349
|
},
|
|
1350
1350
|
"@riebeckite/plugin-shortcodes": {
|
|
1351
1351
|
summary: "Expands built-in shortcode syntax inside Markdown.",
|
|
1352
|
-
markdown: '
|
|
1352
|
+
markdown: '::youtube[id=dQw4w9WgXcQ]\n\n::figure[Demo image]{src="/images/demo.png"}'
|
|
1353
1353
|
},
|
|
1354
1354
|
"@riebeckite/plugin-series": {
|
|
1355
1355
|
summary: "Groups Markdown pages into a reading series using frontmatter.",
|
|
@@ -2589,7 +2589,7 @@ function referenceThemesContent(preset) {
|
|
|
2589
2589
|
}
|
|
2590
2590
|
|
|
2591
2591
|
// src/scaffold/version.ts
|
|
2592
|
-
var RIEBECKITE_VERSION = "^0.0.
|
|
2592
|
+
var RIEBECKITE_VERSION = "^0.0.21";
|
|
2593
2593
|
|
|
2594
2594
|
// src/scaffold/templates.ts
|
|
2595
2595
|
function siteTemplateFiles(preset, variables, options = {}) {
|
|
@@ -2743,16 +2743,16 @@ var README_INTRO = {
|
|
|
2743
2743
|
ja: "空の Riebeckite アプリケーションシェルです。テーマもプラグインもコンポーネントもコンテンツもなく、すべてを自由に追加できます。"
|
|
2744
2744
|
},
|
|
2745
2745
|
minimal: {
|
|
2746
|
-
en: "The smallest
|
|
2747
|
-
ja: "
|
|
2746
|
+
en: "The smallest readable Riebeckite site: Obsidian Markdown, the minimal theme, and a single page you can read end to end.",
|
|
2747
|
+
ja: "最小で読みやすい Riebeckite サイトです。Obsidian マークダウン・minimal テーマ・1 ページだけで、サイトの組み立て方を学べます。"
|
|
2748
2748
|
},
|
|
2749
2749
|
starter: {
|
|
2750
|
-
en: "Recommended
|
|
2751
|
-
ja: "
|
|
2750
|
+
en: "Recommended default: a practical Markdown garden with search, navigation, and reading essentials.",
|
|
2751
|
+
ja: "大半のサイトにおすすめの既定構成です。検索・ナビゲーション・閲覧に必要な機能を備えた実用的な Markdown サイトを作れます。"
|
|
2752
2752
|
},
|
|
2753
2753
|
showcase: {
|
|
2754
|
-
en: "
|
|
2755
|
-
ja: "
|
|
2754
|
+
en: "A feature-rich example that demonstrates the Riebeckite plugin ecosystem with rendered samples, reference pages, and local fixtures.",
|
|
2755
|
+
ja: "Riebeckite の Plugin エコシステムを実際に確認できる機能紹介用の構成です。描画例・リファレンスページ・ローカルのフィクスチャを含みます。"
|
|
2756
2756
|
}
|
|
2757
2757
|
};
|
|
2758
2758
|
var README_WORDS = {
|
|
@@ -2771,7 +2771,7 @@ var README_WORDS = {
|
|
|
2771
2771
|
noPlugins: "no plugins",
|
|
2772
2772
|
single: "single language",
|
|
2773
2773
|
configReference: "Configuration reference",
|
|
2774
|
-
configReferenceBody: "`riebeckite.config.ts`
|
|
2774
|
+
configReferenceBody: "`riebeckite.config.ts` registers every plugin below with its full option set. Treat it as a starting point; the documented options live in the [configuration reference](https://riebeckite.dev/docs/reference/configuration-reference) and each plugin's package README.",
|
|
2775
2775
|
factory: "Factory",
|
|
2776
2776
|
options: "Options",
|
|
2777
2777
|
emDash: "—",
|
|
@@ -2795,7 +2795,7 @@ var README_WORDS = {
|
|
|
2795
2795
|
noPlugins: "プラグインなし",
|
|
2796
2796
|
single: "単一言語",
|
|
2797
2797
|
configReference: "設定リファレンス",
|
|
2798
|
-
configReferenceBody: "`riebeckite.config.ts`
|
|
2798
|
+
configReferenceBody: "`riebeckite.config.ts` には、以下の全プラグインが全オプション付きで登録されています。これは出発点として使い、設定の仕様は[設定リファレンス](https://riebeckite.dev/docs/reference/configuration-reference)と各プラグインパッケージの README を確認してください。",
|
|
2799
2799
|
factory: "ファクトリ",
|
|
2800
2800
|
options: "オプション",
|
|
2801
2801
|
emDash: "—",
|
|
@@ -2863,8 +2863,8 @@ function readmeEn(preset, variables) {
|
|
|
2863
2863
|
lines.push(`## ${words.extending}`, "");
|
|
2864
2864
|
lines.push(words.extendingBody, "");
|
|
2865
2865
|
lines.push(
|
|
2866
|
-
`- Docs: [English](${REPO}/blob/main/docs/README.
|
|
2867
|
-
` · [日本語](${REPO}/blob/main/docs/README.md)`,
|
|
2866
|
+
`- Docs: [English](${REPO}/blob/main/docs/README.md)`,
|
|
2867
|
+
` · [日本語](${REPO}/blob/main/docs/README.ja.md)`,
|
|
2868
2868
|
""
|
|
2869
2869
|
);
|
|
2870
2870
|
}
|
|
@@ -2924,8 +2924,8 @@ function readmeJa(preset, variables) {
|
|
|
2924
2924
|
lines.push(`## ${words.extending}`, "");
|
|
2925
2925
|
lines.push(words.extendingBody, "");
|
|
2926
2926
|
lines.push(
|
|
2927
|
-
`- ドキュメント: [English](${REPO}/blob/main/docs/README.
|
|
2928
|
-
` · [日本語](${REPO}/blob/main/docs/README.md)`,
|
|
2927
|
+
`- ドキュメント: [English](${REPO}/blob/main/docs/README.md)`,
|
|
2928
|
+
` · [日本語](${REPO}/blob/main/docs/README.ja.md)`,
|
|
2929
2929
|
""
|
|
2930
2930
|
);
|
|
2931
2931
|
}
|
|
@@ -2955,7 +2955,7 @@ function deploymentSecretLines(language) {
|
|
|
2955
2955
|
`- \`${GITHUB_ACTIONS_SECRETS.SITE_DISPATCH_TOKEN}\` — in the **content repository**. Lets its \`notify-site.yml\` dispatch updates to this site. Use a fine-grained token scoped to this site repository with **Contents: read and write**.`,
|
|
2956
2956
|
`- \`${GITHUB_ACTIONS_SECRETS.CLOUDFLARE_API_TOKEN}\` and \`${GITHUB_ACTIONS_SECRETS.CLOUDFLARE_ACCOUNT_ID}\` — in **this site repository** for the Cloudflare deploy.`,
|
|
2957
2957
|
"",
|
|
2958
|
-
`The workflows reference these secret names and never contain their values. Never commit the values. See the [separate content repository guide](${REPO}/blob/main/docs/docs/guides/deployment/separate-content-repository.
|
|
2958
|
+
`The workflows reference these secret names and never contain their values. Never commit the values. See the [separate content repository guide](${REPO}/blob/main/docs/docs/guides/deployment/separate-content-repository.md) for the full setup.`,
|
|
2959
2959
|
""
|
|
2960
2960
|
];
|
|
2961
2961
|
}
|
|
@@ -3198,15 +3198,15 @@ var README_DEMOS = {
|
|
|
3198
3198
|
" - title: Default",
|
|
3199
3199
|
" description: A clean, typographic theme.",
|
|
3200
3200
|
" meta: v0.0.5",
|
|
3201
|
-
" href: https://
|
|
3201
|
+
" href: https://riebeckite.dev/docs/themes/default",
|
|
3202
3202
|
" - title: Minimal",
|
|
3203
3203
|
" description: Stripped back to the essentials.",
|
|
3204
3204
|
" meta: v0.0.5",
|
|
3205
|
-
" href: https://
|
|
3205
|
+
" href: https://riebeckite.dev/docs/themes/minimal",
|
|
3206
3206
|
" - title: Gruvbox",
|
|
3207
3207
|
" description: A warm, high-contrast palette.",
|
|
3208
3208
|
" meta: v0.0.5",
|
|
3209
|
-
" href: https://
|
|
3209
|
+
" href: https://riebeckite.dev/docs/themes/gruvbox"
|
|
3210
3210
|
].join("\n")
|
|
3211
3211
|
)
|
|
3212
3212
|
},
|
|
@@ -633,7 +633,7 @@ var minimalTheme = {
|
|
|
633
633
|
};
|
|
634
634
|
var empty = {
|
|
635
635
|
name: "empty",
|
|
636
|
-
description: "A blank
|
|
636
|
+
description: "A blank canvas with only the Riebeckite wiring. Add the theme, plugins, and content yourself.",
|
|
637
637
|
languages: [],
|
|
638
638
|
theme: null,
|
|
639
639
|
plugins: [],
|
|
@@ -642,7 +642,7 @@ var empty = {
|
|
|
642
642
|
};
|
|
643
643
|
var minimal = {
|
|
644
644
|
name: "minimal",
|
|
645
|
-
description: "The smallest
|
|
645
|
+
description: "The smallest readable site, for learning how a Riebeckite site is assembled.",
|
|
646
646
|
languages: ["en"],
|
|
647
647
|
theme: minimalTheme,
|
|
648
648
|
plugins: [obsidianMarkdown],
|
|
@@ -651,7 +651,7 @@ var minimal = {
|
|
|
651
651
|
};
|
|
652
652
|
var starter = {
|
|
653
653
|
name: "starter",
|
|
654
|
-
description: "Recommended
|
|
654
|
+
description: "Recommended default: a practical Markdown garden with search, navigation, and reading essentials.",
|
|
655
655
|
languages: [...SCAFFOLD_LANGUAGES],
|
|
656
656
|
theme: defaultTheme,
|
|
657
657
|
plugins: [
|
|
@@ -679,7 +679,7 @@ var starter = {
|
|
|
679
679
|
};
|
|
680
680
|
var showcase = {
|
|
681
681
|
name: "showcase",
|
|
682
|
-
description: "
|
|
682
|
+
description: "A feature-rich example that demonstrates the Riebeckite plugin ecosystem with rendered samples and references.",
|
|
683
683
|
languages: [...SCAFFOLD_LANGUAGES],
|
|
684
684
|
theme: showCaseTheme,
|
|
685
685
|
plugins: [
|
|
@@ -776,8 +776,8 @@ function resolveScaffoldPreset(value) {
|
|
|
776
776
|
|
|
777
777
|
// src/scaffold/content-pages.ts
|
|
778
778
|
var HELPERS = {
|
|
779
|
-
en: "https://github.com/Rerurate514/riebeckite/blob/main/docs/README.
|
|
780
|
-
ja: "https://github.com/Rerurate514/riebeckite/blob/main/docs/README.md"
|
|
779
|
+
en: "https://github.com/Rerurate514/riebeckite/blob/main/docs/README.md",
|
|
780
|
+
ja: "https://github.com/Rerurate514/riebeckite/blob/main/docs/README.ja.md"
|
|
781
781
|
};
|
|
782
782
|
var PLUGIN_INDEX_URL = "https://github.com/Rerurate514/riebeckite/tree/main/packages/plugins";
|
|
783
783
|
var THEMES_INDEX_URL = "https://github.com/Rerurate514/riebeckite/tree/main/packages/themes";
|
|
@@ -936,7 +936,7 @@ var PLUGIN_MARKDOWN_GUIDES = {
|
|
|
936
936
|
},
|
|
937
937
|
"@riebeckite/plugin-shortcodes": {
|
|
938
938
|
summary: "Expands built-in shortcode syntax inside Markdown.",
|
|
939
|
-
markdown: '
|
|
939
|
+
markdown: '::youtube[id=dQw4w9WgXcQ]\n\n::figure[Demo image]{src="/images/demo.png"}'
|
|
940
940
|
},
|
|
941
941
|
"@riebeckite/plugin-series": {
|
|
942
942
|
summary: "Groups Markdown pages into a reading series using frontmatter.",
|
|
@@ -2259,7 +2259,7 @@ function utilityTemplateFiles(utilities) {
|
|
|
2259
2259
|
}
|
|
2260
2260
|
|
|
2261
2261
|
// src/scaffold/version.ts
|
|
2262
|
-
var RIEBECKITE_VERSION = "^0.0.
|
|
2262
|
+
var RIEBECKITE_VERSION = "^0.0.21";
|
|
2263
2263
|
|
|
2264
2264
|
// src/scaffold/templates.ts
|
|
2265
2265
|
function siteTemplateFiles(preset, variables, options = {}) {
|
|
@@ -2413,16 +2413,16 @@ var README_INTRO = {
|
|
|
2413
2413
|
ja: "空の Riebeckite アプリケーションシェルです。テーマもプラグインもコンポーネントもコンテンツもなく、すべてを自由に追加できます。"
|
|
2414
2414
|
},
|
|
2415
2415
|
minimal: {
|
|
2416
|
-
en: "The smallest
|
|
2417
|
-
ja: "
|
|
2416
|
+
en: "The smallest readable Riebeckite site: Obsidian Markdown, the minimal theme, and a single page you can read end to end.",
|
|
2417
|
+
ja: "最小で読みやすい Riebeckite サイトです。Obsidian マークダウン・minimal テーマ・1 ページだけで、サイトの組み立て方を学べます。"
|
|
2418
2418
|
},
|
|
2419
2419
|
starter: {
|
|
2420
|
-
en: "Recommended
|
|
2421
|
-
ja: "
|
|
2420
|
+
en: "Recommended default: a practical Markdown garden with search, navigation, and reading essentials.",
|
|
2421
|
+
ja: "大半のサイトにおすすめの既定構成です。検索・ナビゲーション・閲覧に必要な機能を備えた実用的な Markdown サイトを作れます。"
|
|
2422
2422
|
},
|
|
2423
2423
|
showcase: {
|
|
2424
|
-
en: "
|
|
2425
|
-
ja: "
|
|
2424
|
+
en: "A feature-rich example that demonstrates the Riebeckite plugin ecosystem with rendered samples, reference pages, and local fixtures.",
|
|
2425
|
+
ja: "Riebeckite の Plugin エコシステムを実際に確認できる機能紹介用の構成です。描画例・リファレンスページ・ローカルのフィクスチャを含みます。"
|
|
2426
2426
|
}
|
|
2427
2427
|
};
|
|
2428
2428
|
var README_WORDS = {
|
|
@@ -2441,7 +2441,7 @@ var README_WORDS = {
|
|
|
2441
2441
|
noPlugins: "no plugins",
|
|
2442
2442
|
single: "single language",
|
|
2443
2443
|
configReference: "Configuration reference",
|
|
2444
|
-
configReferenceBody: "`riebeckite.config.ts`
|
|
2444
|
+
configReferenceBody: "`riebeckite.config.ts` registers every plugin below with its full option set. Treat it as a starting point; the documented options live in the [configuration reference](https://riebeckite.dev/docs/reference/configuration-reference) and each plugin's package README.",
|
|
2445
2445
|
factory: "Factory",
|
|
2446
2446
|
options: "Options",
|
|
2447
2447
|
emDash: "—",
|
|
@@ -2465,7 +2465,7 @@ var README_WORDS = {
|
|
|
2465
2465
|
noPlugins: "プラグインなし",
|
|
2466
2466
|
single: "単一言語",
|
|
2467
2467
|
configReference: "設定リファレンス",
|
|
2468
|
-
configReferenceBody: "`riebeckite.config.ts`
|
|
2468
|
+
configReferenceBody: "`riebeckite.config.ts` には、以下の全プラグインが全オプション付きで登録されています。これは出発点として使い、設定の仕様は[設定リファレンス](https://riebeckite.dev/docs/reference/configuration-reference)と各プラグインパッケージの README を確認してください。",
|
|
2469
2469
|
factory: "ファクトリ",
|
|
2470
2470
|
options: "オプション",
|
|
2471
2471
|
emDash: "—",
|
|
@@ -2533,8 +2533,8 @@ function readmeEn(preset, variables) {
|
|
|
2533
2533
|
lines.push(`## ${words.extending}`, "");
|
|
2534
2534
|
lines.push(words.extendingBody, "");
|
|
2535
2535
|
lines.push(
|
|
2536
|
-
`- Docs: [English](${REPO}/blob/main/docs/README.
|
|
2537
|
-
` · [日本語](${REPO}/blob/main/docs/README.md)`,
|
|
2536
|
+
`- Docs: [English](${REPO}/blob/main/docs/README.md)`,
|
|
2537
|
+
` · [日本語](${REPO}/blob/main/docs/README.ja.md)`,
|
|
2538
2538
|
""
|
|
2539
2539
|
);
|
|
2540
2540
|
}
|
|
@@ -2594,8 +2594,8 @@ function readmeJa(preset, variables) {
|
|
|
2594
2594
|
lines.push(`## ${words.extending}`, "");
|
|
2595
2595
|
lines.push(words.extendingBody, "");
|
|
2596
2596
|
lines.push(
|
|
2597
|
-
`- ドキュメント: [English](${REPO}/blob/main/docs/README.
|
|
2598
|
-
` · [日本語](${REPO}/blob/main/docs/README.md)`,
|
|
2597
|
+
`- ドキュメント: [English](${REPO}/blob/main/docs/README.md)`,
|
|
2598
|
+
` · [日本語](${REPO}/blob/main/docs/README.ja.md)`,
|
|
2599
2599
|
""
|
|
2600
2600
|
);
|
|
2601
2601
|
}
|
|
@@ -2625,7 +2625,7 @@ function deploymentSecretLines(language) {
|
|
|
2625
2625
|
`- \`${GITHUB_ACTIONS_SECRETS.SITE_DISPATCH_TOKEN}\` — in the **content repository**. Lets its \`notify-site.yml\` dispatch updates to this site. Use a fine-grained token scoped to this site repository with **Contents: read and write**.`,
|
|
2626
2626
|
`- \`${GITHUB_ACTIONS_SECRETS.CLOUDFLARE_API_TOKEN}\` and \`${GITHUB_ACTIONS_SECRETS.CLOUDFLARE_ACCOUNT_ID}\` — in **this site repository** for the Cloudflare deploy.`,
|
|
2627
2627
|
"",
|
|
2628
|
-
`The workflows reference these secret names and never contain their values. Never commit the values. See the [separate content repository guide](${REPO}/blob/main/docs/docs/guides/deployment/separate-content-repository.
|
|
2628
|
+
`The workflows reference these secret names and never contain their values. Never commit the values. See the [separate content repository guide](${REPO}/blob/main/docs/docs/guides/deployment/separate-content-repository.md) for the full setup.`,
|
|
2629
2629
|
""
|
|
2630
2630
|
];
|
|
2631
2631
|
}
|
|
@@ -2868,15 +2868,15 @@ var README_DEMOS = {
|
|
|
2868
2868
|
" - title: Default",
|
|
2869
2869
|
" description: A clean, typographic theme.",
|
|
2870
2870
|
" meta: v0.0.5",
|
|
2871
|
-
" href: https://
|
|
2871
|
+
" href: https://riebeckite.dev/docs/themes/default",
|
|
2872
2872
|
" - title: Minimal",
|
|
2873
2873
|
" description: Stripped back to the essentials.",
|
|
2874
2874
|
" meta: v0.0.5",
|
|
2875
|
-
" href: https://
|
|
2875
|
+
" href: https://riebeckite.dev/docs/themes/minimal",
|
|
2876
2876
|
" - title: Gruvbox",
|
|
2877
2877
|
" description: A warm, high-contrast palette.",
|
|
2878
2878
|
" meta: v0.0.5",
|
|
2879
|
-
" href: https://
|
|
2879
|
+
" href: https://riebeckite.dev/docs/themes/gruvbox"
|
|
2880
2880
|
].join("\n")
|
|
2881
2881
|
)
|
|
2882
2882
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const RIEBECKITE_VERSION = "^0.0.
|
|
1
|
+
export declare const RIEBECKITE_VERSION = "^0.0.21";
|
|
@@ -37,7 +37,7 @@ export declare const PACKAGE_MANAGER: "npm";
|
|
|
37
37
|
/** Lockfile name that must be committed */
|
|
38
38
|
export declare const LOCKFILE_NAME: "package-lock.json";
|
|
39
39
|
/** Files/directories that must be in .gitignore */
|
|
40
|
-
export declare const GITIGNORE_REQUIRED: readonly ["node_modules/", "dist/", ".riebeckite/", "app/.riebeckite/"];
|
|
40
|
+
export declare const GITIGNORE_REQUIRED: readonly ["node_modules/", "dist/", ".riebeckite/", "app/.riebeckite/", ".wrangler/", ".dev.vars"];
|
|
41
41
|
/** Files that must NOT be in .gitignore */
|
|
42
42
|
export declare const GITIGNORE_FORBIDDEN: readonly ["package-lock.json"];
|
|
43
43
|
/** Starter preset content pages (base names without language suffixes) */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-riebeckite",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.21",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/src/index.js",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
41
|
"esbuild": "^0.28.2",
|
|
42
|
-
"@riebeckite/test": "0.0.
|
|
42
|
+
"@riebeckite/test": "0.0.21"
|
|
43
43
|
},
|
|
44
44
|
"repository": {
|
|
45
45
|
"type": "git",
|
|
@@ -1,13 +1,19 @@
|
|
|
1
|
-
import type { PluginHeadTag } from "@riebeckite/core";
|
|
2
|
-
|
|
3
1
|
declare module "virtual:riebeckite/client" {
|
|
4
2
|
export function initRiebeckiteClient(): void;
|
|
5
3
|
}
|
|
6
4
|
|
|
5
|
+
declare module "virtual:riebeckite/config" {
|
|
6
|
+
export const config: import("@riebeckite/core").ResolvedRiebeckiteConfig;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
declare module "virtual:riebeckite/content" {
|
|
10
|
+
export const content: import("@riebeckite/core").ContentManager;
|
|
11
|
+
}
|
|
12
|
+
|
|
7
13
|
declare module "hono" {
|
|
8
14
|
interface Env {
|
|
9
15
|
Variables: {
|
|
10
|
-
headTags?: readonly PluginHeadTag[];
|
|
16
|
+
headTags?: readonly import("@riebeckite/core").PluginHeadTag[];
|
|
11
17
|
htmlLanguage?: string;
|
|
12
18
|
};
|
|
13
19
|
Bindings: Record<string, never>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { mountRiebeckiteEndpoints } from "@riebeckite/honox/server";
|
|
2
2
|
import { createApp } from "honox/server";
|
|
3
|
-
import { config } from "
|
|
4
|
-
import { content } from "
|
|
3
|
+
import { config } from "virtual:riebeckite/config";
|
|
4
|
+
import { content } from "virtual:riebeckite/content";
|
|
5
5
|
|
|
6
6
|
const app = createApp({
|
|
7
7
|
init: (app) => {
|
|
@@ -1,34 +1,12 @@
|
|
|
1
|
-
import path from "node:path";
|
|
2
|
-
import { fileURLToPath } from "node:url";
|
|
3
1
|
import build from "@hono/vite-build/node";
|
|
4
|
-
import {
|
|
5
|
-
defaultSsrExternals,
|
|
6
|
-
riebeckite,
|
|
7
|
-
riebeckiteSsg,
|
|
8
|
-
riebeckiteSsgExtensionMap,
|
|
9
|
-
} from "@riebeckite/honox";
|
|
2
|
+
import { riebeckiteVite } from "@riebeckite/honox";
|
|
10
3
|
import honox from "honox/vite";
|
|
11
4
|
import { defineConfig } from "vite";
|
|
12
5
|
|
|
13
|
-
const appRoot = fileURLToPath(new URL(".", import.meta.url));
|
|
14
|
-
|
|
15
6
|
export default defineConfig({
|
|
16
7
|
plugins: [
|
|
17
|
-
honox({
|
|
18
|
-
|
|
19
|
-
}),
|
|
20
|
-
riebeckite({ appRoot }),
|
|
8
|
+
honox({ client: { input: ["/app/client.ts", "/app/style.css"] } }),
|
|
9
|
+
...riebeckiteVite(),
|
|
21
10
|
build(),
|
|
22
|
-
riebeckiteSsg({
|
|
23
|
-
entry: path.join(appRoot, "app/server.ts"),
|
|
24
|
-
extensionMap: riebeckiteSsgExtensionMap(),
|
|
25
|
-
}),
|
|
26
11
|
],
|
|
27
|
-
environments: {
|
|
28
|
-
ssr: {
|
|
29
|
-
resolve: {
|
|
30
|
-
external: [...defaultSsrExternals],
|
|
31
|
-
},
|
|
32
|
-
},
|
|
33
|
-
},
|
|
34
12
|
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { NotFoundHandler } from "hono";
|
|
2
|
+
|
|
3
|
+
const handler: NotFoundHandler = (c) => {
|
|
4
|
+
c.status(404);
|
|
5
|
+
|
|
6
|
+
return c.render(
|
|
7
|
+
<main class="not-found">
|
|
8
|
+
<p class="not-found__status">404</p>
|
|
9
|
+
<h1>Page not found</h1>
|
|
10
|
+
<p>The page you requested does not exist or is not available.</p>
|
|
11
|
+
<p>
|
|
12
|
+
<a href="/">Back to home</a>
|
|
13
|
+
</p>
|
|
14
|
+
</main>,
|
|
15
|
+
);
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export default handler;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsxRenderer } from "hono/jsx-renderer";
|
|
2
2
|
import { Link, Script } from "honox/server";
|
|
3
|
-
import { config } from "
|
|
3
|
+
import { config } from "virtual:riebeckite/config";
|
|
4
4
|
|
|
5
5
|
// Riebeckite plugin client entries need the HonoX client bundle even without
|
|
6
6
|
// an island component.
|
|
@@ -1,48 +1,29 @@
|
|
|
1
|
-
import { getEntryLanguage } from "@riebeckite/core";
|
|
2
1
|
import {
|
|
3
2
|
contentRouteSsgParams,
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
resolveRiebeckiteContentRequest,
|
|
4
|
+
riebeckiteSsgParams,
|
|
6
5
|
} from "@riebeckite/honox/server";
|
|
6
|
+
import { PageBody } from "@riebeckite/honox/ui";
|
|
7
7
|
import { createRoute } from "honox/factory";
|
|
8
8
|
import { SiteArticle } from "../components/article";
|
|
9
|
-
import { content } from "
|
|
9
|
+
import { content } from "virtual:riebeckite/content";
|
|
10
10
|
|
|
11
11
|
export default createRoute(
|
|
12
|
-
contentRouteSsgParams("/:slug{.+}",
|
|
13
|
-
const manifest = await content.getManifest();
|
|
14
|
-
const contentPaths = manifest.publicEntries
|
|
15
|
-
.filter((entry) => entry.permalink !== "/")
|
|
16
|
-
.map((entry) => ({ slug: entry.permalink.replace(/^\/+/, "") }));
|
|
17
|
-
return [...contentPaths, ...(await pluginPageSsgParams(content))];
|
|
18
|
-
}),
|
|
12
|
+
contentRouteSsgParams("/:slug{.+}", () => riebeckiteSsgParams(content)),
|
|
19
13
|
async (c) => {
|
|
20
|
-
const
|
|
21
|
-
if (!requestedSlug) return c.notFound();
|
|
22
|
-
if (/\.[a-zA-Z0-9]+$/.test(requestedSlug)) return c.notFound();
|
|
14
|
+
const resolved = await resolveRiebeckiteContentRequest(c, content);
|
|
23
15
|
|
|
24
|
-
|
|
25
|
-
if (!route) return c.notFound();
|
|
26
|
-
if (route.kind === "redirect")
|
|
27
|
-
return c.redirect(route.location, route.status);
|
|
28
|
-
if (route.kind === "page") {
|
|
29
|
-
c.set("headTags", route.page.headTags ?? []);
|
|
30
|
-
c.set("htmlLanguage", route.page.language);
|
|
31
|
-
return c.render(
|
|
32
|
-
<div dangerouslySetInnerHTML={{ __html: route.page.body }} />,
|
|
33
|
-
);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
const post = await content.getProcessedContent(route.entry.slug);
|
|
16
|
+
if (resolved.kind === "response") return resolved.response;
|
|
37
17
|
|
|
38
|
-
|
|
39
|
-
|
|
18
|
+
if (resolved.kind === "page") {
|
|
19
|
+
return c.render(<PageBody html={resolved.page.body} />);
|
|
20
|
+
}
|
|
40
21
|
|
|
41
22
|
return c.render(
|
|
42
23
|
<SiteArticle
|
|
43
|
-
post={post}
|
|
44
|
-
bodySlots={
|
|
24
|
+
post={resolved.post}
|
|
25
|
+
bodySlots={resolved.entry.bodySlots}
|
|
45
26
|
/>,
|
|
46
27
|
);
|
|
47
28
|
},
|
|
48
|
-
);
|
|
29
|
+
);
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { NotFoundHandler } from "hono";
|
|
2
|
+
|
|
3
|
+
const handler: NotFoundHandler = (c) => {
|
|
4
|
+
c.status(404);
|
|
5
|
+
|
|
6
|
+
return c.render(
|
|
7
|
+
<main class="not-found">
|
|
8
|
+
<p class="not-found__status">404</p>
|
|
9
|
+
<h1>Page not found</h1>
|
|
10
|
+
<p>The page you requested does not exist or is not available.</p>
|
|
11
|
+
<p>
|
|
12
|
+
<a href="/">Back to home</a>
|
|
13
|
+
</p>
|
|
14
|
+
</main>,
|
|
15
|
+
);
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export default handler;
|