jekyll-theme-zer0 1.28.0 → 1.30.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +1143 -13
- data/_data/README.md +2 -0
- data/_data/ai.yml +5 -3
- data/_data/ai_pricing.yml +36 -0
- data/_data/backlog.yml +507 -2
- data/_data/consumers.yml +157 -9
- data/_data/features.yml +303 -20
- data/_data/feedback_types.yml +17 -12
- data/_data/i18n/fr.yml +12 -7
- data/_data/i18n/manifest.yml +39 -12
- data/_data/ingredient_densities.yml +122 -0
- data/_data/landing.yml +5 -2
- data/_data/navigation/main.yml +16 -0
- data/_data/navigation/quickstart.yml +4 -0
- data/_data/recipe_courses.yml +64 -0
- data/_data/site_builder.yml +874 -0
- data/_data/theme-manifest.yml +160 -124
- data/_data/ui-text.yml +26 -0
- data/_includes/README.md +26 -2
- data/_includes/analytics/posthog.html +2 -2
- data/_includes/components/admin-links.html +2 -2
- data/_includes/components/admin-tabs.html +2 -2
- data/_includes/components/ai-chat.html +14 -11
- data/_includes/components/analytics-dashboard.html +8 -8
- data/_includes/components/author-bio.html +1 -1
- data/_includes/components/author-card.html +10 -2
- data/_includes/components/author-eeat.html +4 -4
- data/_includes/components/background-customizer.html +10 -10
- data/_includes/components/background-image.html +114 -0
- data/_includes/components/background-settings.html +28 -15
- data/_includes/components/collection-manager.html +5 -5
- data/_includes/components/component-showcase.html +13 -13
- data/_includes/components/config-editor.html +12 -12
- data/_includes/components/config-viewer.html +8 -8
- data/_includes/components/cookie-consent.html +15 -15
- data/_includes/components/cta-button.html +7 -2
- data/_includes/components/dev-shortcuts.html +7 -7
- data/_includes/components/env-dashboard.html +8 -8
- data/_includes/components/env-switcher.html +9 -9
- data/_includes/components/feature-card.html +2 -2
- data/_includes/components/halfmoon.html +2 -2
- data/_includes/components/info-section.html +42 -37
- data/_includes/components/js-cdn.html +15 -15
- data/_includes/components/language-toggle.html +168 -21
- data/_includes/components/mermaid.html +72 -435
- data/_includes/components/nanobar.html +5 -5
- data/_includes/components/nav-editor.html +2 -2
- data/_includes/components/nav-export.html +2 -2
- data/_includes/components/nav-overview.html +2 -2
- data/_includes/components/page-feedback.html +45 -30
- data/_includes/components/page-views-init.html +55 -0
- data/_includes/components/page-views.html +33 -0
- data/_includes/components/post-card.html +22 -22
- data/_includes/components/post-type-badge.html +2 -2
- data/_includes/components/powered-by.html +2 -2
- data/_includes/components/preview-image.html +6 -0
- data/_includes/components/quick-index.html +2 -2
- data/_includes/components/recipe-card.html +67 -0
- data/_includes/components/recipe-duration.html +50 -0
- data/_includes/components/recipe-grams.html +58 -0
- data/_includes/components/recipe-index.html +96 -0
- data/_includes/components/recipe-ingredients.html +90 -0
- data/_includes/components/recipe-meta.html +96 -0
- data/_includes/components/recipe-nutrition.html +57 -0
- data/_includes/components/recipe-qty.html +73 -0
- data/_includes/components/recipe-ratio.html +151 -0
- data/_includes/components/recipe-scaler.html +73 -0
- data/_includes/components/recipe-steps.html +86 -0
- data/_includes/components/recipe-temp.html +45 -0
- data/_includes/components/search-modal.html +29 -4
- data/_includes/components/searchbar.html +2 -2
- data/_includes/components/shortcuts-modal.html +3 -0
- data/_includes/components/svg-background.html +2 -2
- data/_includes/components/theme-customizer.html +2 -2
- data/_includes/components/theme-info.html +14 -7
- data/_includes/components/theme-preview-gallery.html +22 -22
- data/_includes/content/giscus.html +2 -2
- data/_includes/content/intro.html +8 -8
- data/_includes/content/jsonld-faq.html +2 -2
- data/_includes/content/jsonld-software.html +24 -5
- data/_includes/content/seo.html +4 -4
- data/_includes/content/sitemap.html +27 -27
- data/_includes/content/toc.html +183 -183
- data/_includes/core/branding.html +6 -6
- data/_includes/core/console-capture.html +32 -74
- data/_includes/core/favicon.html +49 -7
- data/_includes/core/footer-fabs.html +17 -3
- data/_includes/core/footer.html +49 -34
- data/_includes/core/head.html +110 -86
- data/_includes/core/header.html +76 -54
- data/_includes/docs/bootstrap-docs.html +8 -8
- data/_includes/landing/landing-install-cards.html +2 -2
- data/_includes/landing/landing-quick-links.html +1 -1
- data/_includes/navigation/admin-nav.html +2 -2
- data/_includes/navigation/nav-tree.html +8 -8
- data/_includes/navigation/navbar.html +12 -12
- data/_includes/navigation/section-sidebar.html +109 -27
- data/_includes/navigation/sidebar-config.html +36 -2
- data/_includes/navigation/sidebar-left.html +17 -16
- data/_includes/navigation/sidebar-right.html +8 -7
- data/_includes/obsidian/full-graph.html +2 -2
- data/_includes/setup/claude-session.html +72 -0
- data/_includes/setup/prereq-checklist.html +90 -0
- data/_includes/setup/wizard.html +924 -222
- data/_includes/stats/stats-categories.html +8 -8
- data/_includes/stats/stats-header.html +14 -14
- data/_includes/stats/stats-metrics.html +14 -14
- data/_includes/stats/stats-no-data.html +12 -12
- data/_includes/stats/stats-overview.html +6 -6
- data/_includes/stats/stats-tags.html +8 -8
- data/_layouts/404.html +38 -24
- data/_layouts/README.md +2 -0
- data/_layouts/admin.html +24 -24
- data/_layouts/article.html +43 -33
- data/_layouts/author.html +20 -20
- data/_layouts/authors.html +2 -2
- data/_layouts/book-abc.html +12 -12
- data/_layouts/book-story.html +15 -15
- data/_layouts/book.html +12 -12
- data/_layouts/collection.html +33 -33
- data/_layouts/cookbook.html +88 -0
- data/_layouts/default.html +31 -28
- data/_layouts/home.html +23 -23
- data/_layouts/index.html +10 -10
- data/_layouts/landing.html +17 -17
- data/_layouts/news.html +44 -44
- data/_layouts/note.html +38 -38
- data/_layouts/notebook.html +34 -34
- data/_layouts/recipe.html +274 -0
- data/_layouts/root.html +92 -55
- data/_layouts/section.html +62 -33
- data/_layouts/setup.html +3 -3
- data/_layouts/sitemap-collection.html +49 -49
- data/_layouts/stats.html +40 -40
- data/_layouts/tag.html +12 -12
- data/_layouts/welcome.html +21 -21
- data/_sass/components/_callout.scss +1 -1
- data/_sass/components/_footer.scss +37 -1
- data/_sass/components/_mermaid.scss +375 -0
- data/_sass/components/_page-views.scss +36 -0
- data/_sass/components/_recipe.scss +506 -0
- data/_sass/components/_setup-wizard.scss +764 -0
- data/_sass/components/_ui-enhancements.scss +6 -6
- data/_sass/core/_navbar.scss +261 -46
- data/_sass/layouts/_landing.scss +2 -2
- data/_sass/layouts/_navbar-extras.scss +14 -4
- data/_sass/tokens/_color.scss +6 -0
- data/_sass/tokens/_index.scss +2 -0
- data/_sass/tokens/_radius.scss +21 -0
- data/_sass/tokens/_typography.scss +4 -0
- data/_sass/utilities/_focus.scss +14 -0
- data/assets/css/main.scss +4 -0
- data/assets/js/ai-chat.js +47 -5
- data/assets/js/fleet-feedback-capture.js +124 -0
- data/assets/js/fleet-feedback.js +853 -0
- data/assets/js/mermaid-diagrams.js +1267 -0
- data/assets/js/modules/navigation/config.js +9 -6
- data/assets/js/modules/navigation/navbar.js +55 -0
- data/assets/js/modules/navigation/scroll-spy.js +315 -80
- data/assets/js/modules/theme/appearance.js +8 -2
- data/assets/js/obsidian-wiki-links.js +8 -3
- data/assets/js/page-feedback.js +125 -192
- data/assets/js/page-views.js +372 -0
- data/assets/js/recipe-scaler.js +501 -0
- data/assets/js/search-modal.js +36 -0
- data/assets/js/setup-wizard.js +2279 -226
- data/assets/js/site-builder.js +1834 -0
- data/assets/js/ui-enhancements.js +11 -3
- data/scripts/README.md +44 -0
- data/scripts/ai/README.md +38 -0
- data/scripts/ai/api_call.rb +124 -0
- data/scripts/ai/usage.rb +314 -0
- data/scripts/ai/usage_report.rb +225 -0
- data/scripts/bin/audit-consumer +39 -7
- data/scripts/bin/giscus-discussions +213 -14
- data/scripts/bin/manifest +35 -12
- data/scripts/ci/agent_review_result.py +164 -0
- data/scripts/ci/test_agent_review_result.py +172 -0
- data/scripts/ci/test_visual_evidence_autogen.py +341 -0
- data/scripts/ci/visual_evidence_autogen.py +1060 -0
- data/scripts/content-review.rb +20 -1
- data/scripts/design-system-check.rb +170 -0
- data/scripts/lib/audit.sh +42 -2
- data/scripts/lint-liquid-raw.rb +137 -0
- data/scripts/test/integration/mermaid +22 -8
- data/scripts/test/lib/run_tests.sh +3 -1
- data/scripts/test/lib/test_agent_review_result.sh +27 -0
- data/scripts/test/lib/test_visual_evidence_autogen.sh +24 -0
- data/scripts/translate.rb +94 -16
- metadata +48 -2
data/_data/feedback_types.yml
CHANGED
|
@@ -16,11 +16,16 @@
|
|
|
16
16
|
# group section header in the selector ("This page" | "The site")
|
|
17
17
|
# scope page | site — targets this page, or the theme as a whole
|
|
18
18
|
# description one-line helper shown under the label
|
|
19
|
-
# labels GitHub labels applied to the issue.
|
|
20
|
-
#
|
|
21
|
-
#
|
|
22
|
-
#
|
|
23
|
-
#
|
|
19
|
+
# labels GitHub labels applied to the issue. Drawn from the FLEET
|
|
20
|
+
# ISSUE-PIPELINE label set (bamr87/bamr87 _data/fleet.yml
|
|
21
|
+
# issue_pipeline.labels.types: bug feature docs chore ci refactor
|
|
22
|
+
# test security question) plus optional area:*, so an issue filed
|
|
23
|
+
# from this widget is pipeline-eligible on the next scan instead
|
|
24
|
+
# of carrying labels only this repo understands.
|
|
25
|
+
# Every one MUST already exist in the repo: GitHub SILENTLY DROPS
|
|
26
|
+
# unknown labels from a prefilled URL (this was the old feature's
|
|
27
|
+
# `labels=ai-agent` bug). Verify with `gh label list`. The marker
|
|
28
|
+
# label from site.page_feedback.default_labels is added on top.
|
|
24
29
|
# agent true → assign @copilot and attach `directive` for autonomous work
|
|
25
30
|
# false → human triage only (no assignee, no directive)
|
|
26
31
|
# directive compact agent instruction. Kept SHORT on purpose — it rides in
|
|
@@ -50,7 +55,7 @@
|
|
|
50
55
|
group: This page
|
|
51
56
|
scope: page
|
|
52
57
|
description: Polish the copy, structure, or presentation
|
|
53
|
-
labels: [
|
|
58
|
+
labels: [docs]
|
|
54
59
|
agent: true
|
|
55
60
|
directive: >-
|
|
56
61
|
Act as a content editor for the page in Page Context. Tighten copy, fix
|
|
@@ -64,7 +69,7 @@
|
|
|
64
69
|
group: This page
|
|
65
70
|
scope: page
|
|
66
71
|
description: Add depth, examples, or a section a reader would expect
|
|
67
|
-
labels: [
|
|
72
|
+
labels: [docs]
|
|
68
73
|
agent: true
|
|
69
74
|
directive: >-
|
|
70
75
|
Expand the page in Page Context with concrete examples, prerequisites, and
|
|
@@ -77,7 +82,7 @@
|
|
|
77
82
|
group: This page
|
|
78
83
|
scope: page
|
|
79
84
|
description: Stale versions, dead links, or old screenshots
|
|
80
|
-
labels: [
|
|
85
|
+
labels: [docs]
|
|
81
86
|
agent: true
|
|
82
87
|
directive: >-
|
|
83
88
|
Audit the page in Page Context for stale versions, dead links, and outdated
|
|
@@ -90,7 +95,7 @@
|
|
|
90
95
|
group: This page
|
|
91
96
|
scope: page
|
|
92
97
|
description: Contrast, keyboard, screen-reader, or focus problems
|
|
93
|
-
labels: ["area:a11y"]
|
|
98
|
+
labels: [bug, "area:a11y"]
|
|
94
99
|
agent: true
|
|
95
100
|
directive: >-
|
|
96
101
|
Audit the page in Page Context against WCAG 2.1 AA for the reported barrier
|
|
@@ -105,7 +110,7 @@
|
|
|
105
110
|
group: The site
|
|
106
111
|
scope: site
|
|
107
112
|
description: A design or usability refinement for the theme
|
|
108
|
-
labels: [
|
|
113
|
+
labels: [feature]
|
|
109
114
|
agent: true
|
|
110
115
|
directive: >-
|
|
111
116
|
Propose a Bootstrap-first UI/UX refinement, using the page in Page Context
|
|
@@ -118,7 +123,7 @@
|
|
|
118
123
|
group: The site
|
|
119
124
|
scope: site
|
|
120
125
|
description: Slow load, layout shift, or heavy assets
|
|
121
|
-
labels: ["area:perf"]
|
|
126
|
+
labels: [bug, "area:perf"]
|
|
122
127
|
agent: true
|
|
123
128
|
directive: >-
|
|
124
129
|
Profile the page in Page Context (LCP, CLS, INP), identify the bottleneck,
|
|
@@ -131,7 +136,7 @@
|
|
|
131
136
|
group: The site
|
|
132
137
|
scope: site
|
|
133
138
|
description: Propose a new site-wide capability
|
|
134
|
-
labels: [
|
|
139
|
+
labels: [feature]
|
|
135
140
|
agent: false
|
|
136
141
|
directive: ""
|
|
137
142
|
placeholder: What should it do, and who benefits?
|
data/_data/i18n/fr.yml
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
# scripts/translate.rb from _data/ui-text.yml (en). Regenerate via
|
|
5
5
|
# the Translate workflow or: ruby scripts/translate.rb --langs fr
|
|
6
6
|
# ================================================================
|
|
7
|
-
skip_links: Liens d'
|
|
7
|
+
skip_links: Liens d'accès rapide
|
|
8
8
|
skip_primary_nav: Aller à la navigation principale
|
|
9
9
|
skip_content: Aller au contenu
|
|
10
10
|
skip_main_content: Aller au contenu principal
|
|
@@ -14,8 +14,8 @@ pagination_previous: Précédent
|
|
|
14
14
|
pagination_next: Suivant
|
|
15
15
|
breadcrumb_home_label: Accueil
|
|
16
16
|
breadcrumb_separator: "/"
|
|
17
|
-
menu_label:
|
|
18
|
-
search_label:
|
|
17
|
+
menu_label: Basculer le menu
|
|
18
|
+
search_label: Basculer la recherche
|
|
19
19
|
toc_label: Sur cette page
|
|
20
20
|
ext_link_label: Lien direct
|
|
21
21
|
less_than: moins de
|
|
@@ -28,7 +28,7 @@ author_label: 'Auteur :'
|
|
|
28
28
|
comments_label: Laisser un commentaire
|
|
29
29
|
comments_title: Commentaires
|
|
30
30
|
more_label: En savoir plus
|
|
31
|
-
related_label: Vous
|
|
31
|
+
related_label: Vous pourriez aussi aimer
|
|
32
32
|
follow_label: 'Suivre :'
|
|
33
33
|
feed_label: Flux
|
|
34
34
|
powered_by: Propulsé par
|
|
@@ -47,8 +47,8 @@ comment_btn_submit: Envoyer le commentaire
|
|
|
47
47
|
comment_btn_submitted: Envoyé
|
|
48
48
|
comment_success_msg: Merci pour votre commentaire ! Il apparaîtra sur le site une
|
|
49
49
|
fois approuvé.
|
|
50
|
-
comment_error_msg: Désolé, une erreur s'est produite lors de l'envoi. Veuillez
|
|
51
|
-
que tous les champs obligatoires sont remplis et
|
|
50
|
+
comment_error_msg: Désolé, une erreur s'est produite lors de l'envoi. Veuillez vous
|
|
51
|
+
assurer que tous les champs obligatoires sont remplis et réessayez.
|
|
52
52
|
loading_label: Chargement...
|
|
53
53
|
search_label_text: Saisissez votre terme de recherche...
|
|
54
54
|
search_placeholder_text: Saisissez votre terme de recherche...
|
|
@@ -62,7 +62,7 @@ stats_tags: Étiquettes
|
|
|
62
62
|
stats_last_updated: Dernière mise à jour
|
|
63
63
|
stats_overview: Aperçu
|
|
64
64
|
stats_content_breakdown: Répartition du contenu
|
|
65
|
-
theme_toggle:
|
|
65
|
+
theme_toggle: Basculer le thème
|
|
66
66
|
dark_mode: Mode sombre
|
|
67
67
|
light_mode: Mode clair
|
|
68
68
|
view_source: Voir la source
|
|
@@ -80,6 +80,7 @@ shortcuts_show_help: Afficher cette aide
|
|
|
80
80
|
home_label: Accueil
|
|
81
81
|
main_nav_label: Navigation principale
|
|
82
82
|
search_button_label: Rechercher
|
|
83
|
+
search_button_title: Rechercher — appuyez sur / ou Ctrl+K
|
|
83
84
|
settings_button_label: Paramètres
|
|
84
85
|
toc_title: Table des matières
|
|
85
86
|
published_label: Publié
|
|
@@ -93,6 +94,10 @@ edit_on_github: Modifier sur GitHub
|
|
|
93
94
|
lang_toggle_label: Langue
|
|
94
95
|
lang_toggle_aria: Changer de langue
|
|
95
96
|
lang_not_available: Pas encore traduit
|
|
97
|
+
lang_machine_translated: auto
|
|
98
|
+
lang_machine_translated_title: Traduction générée automatiquement
|
|
99
|
+
lang_untranslated_note: Les langues marquées ne sont pas encore traduites — ces liens
|
|
100
|
+
ouvrent la version originale.
|
|
96
101
|
machine_translation_notice: Cette page a été traduite automatiquement à partir de
|
|
97
102
|
l'original en anglais.
|
|
98
103
|
machine_translation_view_source: Voir l'original
|
data/_data/i18n/manifest.yml
CHANGED
|
@@ -240,6 +240,15 @@ pages:
|
|
|
240
240
|
sha: aa231d65673848a7b52a9f8341f56482d844c1c98d24e7f44903ad6f8eb496be
|
|
241
241
|
translated_at: '2026-08-05T04:42:58Z'
|
|
242
242
|
prompt_version: 1
|
|
243
|
+
"/design/":
|
|
244
|
+
source: pages/_about/design.md
|
|
245
|
+
sha: 1603b6e4656c1116919a6a8064c332044c4ba95abdcd85f848913b4c80dd4955
|
|
246
|
+
fr:
|
|
247
|
+
url: "/fr/design/"
|
|
248
|
+
path: fr/about/design.md
|
|
249
|
+
sha: 1603b6e4656c1116919a6a8064c332044c4ba95abdcd85f848913b4c80dd4955
|
|
250
|
+
translated_at: '2026-08-15T02:30:28Z'
|
|
251
|
+
prompt_version: 1
|
|
243
252
|
"/docs/":
|
|
244
253
|
source: pages/_docs/index.md
|
|
245
254
|
sha: d43825e9ed60cdfb2a02bb0e4e59a51f16d6474f3f6e09f4506fa4764f75c484
|
|
@@ -618,6 +627,15 @@ pages:
|
|
|
618
627
|
sha: 42ea6fdec8a04f27516f5a49f93c53671bf98ea06058945b39495657863a27d6
|
|
619
628
|
translated_at: '2026-08-05T03:25:32Z'
|
|
620
629
|
prompt_version: 1
|
|
630
|
+
"/docs/features/cookbook-collection/":
|
|
631
|
+
source: pages/_docs/features/cookbook-collection.md
|
|
632
|
+
sha: c36a4d6c97f36473e4742a0461ae17bc40978bf85f924c78b7f43b0c38d6bffa
|
|
633
|
+
fr:
|
|
634
|
+
url: "/fr/docs/features/cookbook-collection/"
|
|
635
|
+
path: fr/docs/features/cookbook-collection.md
|
|
636
|
+
sha: c36a4d6c97f36473e4742a0461ae17bc40978bf85f924c78b7f43b0c38d6bffa
|
|
637
|
+
translated_at: '2026-09-01T21:28:41Z'
|
|
638
|
+
prompt_version: 1
|
|
621
639
|
"/docs/features/cookie-consent/":
|
|
622
640
|
source: pages/_docs/features/cookie-consent.md
|
|
623
641
|
sha: a7054fb3fcc62ff925ae9d257d441afac2b49123608801bea9caa43bf0edcb07
|
|
@@ -656,12 +674,12 @@ pages:
|
|
|
656
674
|
prompt_version: 1
|
|
657
675
|
"/docs/features/giscus-comments/":
|
|
658
676
|
source: pages/_docs/features/giscus-comments.md
|
|
659
|
-
sha:
|
|
677
|
+
sha: b2fb5564968e8b895f93d0292a3150e7ff6d46cf59c0a7363b77adad4a302074
|
|
660
678
|
fr:
|
|
661
679
|
url: "/fr/docs/features/giscus-comments/"
|
|
662
680
|
path: fr/docs/features/giscus-comments.md
|
|
663
|
-
sha:
|
|
664
|
-
translated_at: '2026-08-
|
|
681
|
+
sha: b2fb5564968e8b895f93d0292a3150e7ff6d46cf59c0a7363b77adad4a302074
|
|
682
|
+
translated_at: '2026-08-15T02:30:10Z'
|
|
665
683
|
prompt_version: 1
|
|
666
684
|
"/docs/features/jupyter-notebooks/":
|
|
667
685
|
source: pages/_docs/features/jupyter-notebooks.md
|
|
@@ -773,12 +791,12 @@ pages:
|
|
|
773
791
|
prompt_version: 1
|
|
774
792
|
"/docs/features/skip-to-content/":
|
|
775
793
|
source: pages/_docs/features/skip-to-content.md
|
|
776
|
-
sha:
|
|
794
|
+
sha: 10f5ccd2de04d743b6b2fea50d6f0a72b7e958c1e081c47ecf15ce85abd0602b
|
|
777
795
|
fr:
|
|
778
796
|
url: "/fr/docs/features/skip-to-content/"
|
|
779
797
|
path: fr/docs/features/skip-to-content.md
|
|
780
|
-
sha:
|
|
781
|
-
translated_at: '2026-
|
|
798
|
+
sha: 10f5ccd2de04d743b6b2fea50d6f0a72b7e958c1e081c47ecf15ce85abd0602b
|
|
799
|
+
translated_at: '2026-09-01T21:29:15Z'
|
|
782
800
|
prompt_version: 1
|
|
783
801
|
"/docs/features/smart-404/":
|
|
784
802
|
source: pages/_docs/features/smart-404.md
|
|
@@ -1241,12 +1259,12 @@ pages:
|
|
|
1241
1259
|
prompt_version: 1
|
|
1242
1260
|
"/posts/2025/01/21/remote-work-revolution/":
|
|
1243
1261
|
source: pages/_posts/world/2025-01-21-remote-work-revolution.md
|
|
1244
|
-
sha:
|
|
1262
|
+
sha: eca7d4a2c77752faba20fd092f86ad2c9748aaf2994332deaeb564583fdd61e1
|
|
1245
1263
|
fr:
|
|
1246
1264
|
url: "/fr/posts/2025/01/21/remote-work-revolution/"
|
|
1247
1265
|
path: fr/posts/world/2025-01-21-remote-work-revolution.md
|
|
1248
|
-
sha:
|
|
1249
|
-
translated_at: '2026-
|
|
1266
|
+
sha: eca7d4a2c77752faba20fd092f86ad2c9748aaf2994332deaeb564583fdd61e1
|
|
1267
|
+
translated_at: '2026-09-01T21:27:46Z'
|
|
1250
1268
|
prompt_version: 1
|
|
1251
1269
|
"/posts/2025/01/22/git-workflow-best-practices/":
|
|
1252
1270
|
source: pages/_posts/development/2025-01-22-git-workflow-best-practices.md
|
|
@@ -1446,6 +1464,15 @@ pages:
|
|
|
1446
1464
|
sha: 74a066845c5f18d5e97f4ae523fc0cba8ded6a96a2b8c28d9ac874de4b4e5212
|
|
1447
1465
|
translated_at: '2026-07-23T16:56:33Z'
|
|
1448
1466
|
prompt_version: 1
|
|
1467
|
+
"/posts/2026/08/15/jekyll-preview-server-from-an-old-pc/":
|
|
1468
|
+
source: pages/_posts/tutorial/2026-08-15-jekyll-preview-server-from-an-old-pc.md
|
|
1469
|
+
sha: 22764b20a0e99bce17af697918e95d38793649977d01833311f71a7714ad93ca
|
|
1470
|
+
fr:
|
|
1471
|
+
url: "/fr/posts/2026/08/15/jekyll-preview-server-from-an-old-pc/"
|
|
1472
|
+
path: fr/posts/tutorial/2026-08-15-jekyll-preview-server-from-an-old-pc.md
|
|
1473
|
+
sha: 22764b20a0e99bce17af697918e95d38793649977d01833311f71a7714ad93ca
|
|
1474
|
+
translated_at: '2026-09-01T21:27:18Z'
|
|
1475
|
+
prompt_version: 1
|
|
1449
1476
|
"/quickstart/":
|
|
1450
1477
|
source: pages/_quickstart/index.md
|
|
1451
1478
|
sha: 2555308eac40feb9be440ee8287840ef6ed93fed5e8df08a135cecbc0479611b
|
|
@@ -1493,10 +1520,10 @@ pages:
|
|
|
1493
1520
|
prompt_version: 1
|
|
1494
1521
|
ui_text:
|
|
1495
1522
|
fr:
|
|
1496
|
-
sha:
|
|
1497
|
-
translated_at: '2026-
|
|
1523
|
+
sha: 648882b32870f5d536540e4b6e61d925c3bf7e550b3a6dd471ab8166cc36b351
|
|
1524
|
+
translated_at: '2026-09-01T21:29:35Z'
|
|
1498
1525
|
prompt_version: 1
|
|
1499
1526
|
source_lang: en
|
|
1500
1527
|
languages:
|
|
1501
1528
|
- fr
|
|
1502
|
-
updated_at: '2026-
|
|
1529
|
+
updated_at: '2026-09-01T21:29:35Z'
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
# Feature: ZER0-084
|
|
2
|
+
# ─────────────────────────────────────────────────────────────────────────────
|
|
3
|
+
# Ingredient densities — GRAMS PER US CUP (236.588 ml).
|
|
4
|
+
#
|
|
5
|
+
# Used by components/recipe-ingredients.html: when a recipe lists an ingredient
|
|
6
|
+
# by volume (cup / tbsp / tsp / fl oz …), the component looks this table up by
|
|
7
|
+
# the slugified ingredient name and emits `data-grams-per-cup`, which lets
|
|
8
|
+
# assets/js/recipe-scaler.js convert that volume to a weight in metric mode —
|
|
9
|
+
# and a weight back to volume in US mode.
|
|
10
|
+
#
|
|
11
|
+
# Lookup order (first match wins):
|
|
12
|
+
# 1. the ingredient's own `grams_per_cup:` front matter
|
|
13
|
+
# 2. this table, keyed by the ingredient name slugified
|
|
14
|
+
# ("Bread flour" → "bread-flour", "All-Purpose Flour" → "all-purpose-flour")
|
|
15
|
+
# 3. no density — volumes stay volumes (ml), weights stay weights (g)
|
|
16
|
+
#
|
|
17
|
+
# Set `weigh: false` on an ingredient to opt it out of volume→weight entirely.
|
|
18
|
+
# A consuming site can override this whole file with its own copy.
|
|
19
|
+
#
|
|
20
|
+
# Values are common US test-kitchen averages; flours in particular vary with
|
|
21
|
+
# scooping method, so treat them as a good default rather than a lab constant.
|
|
22
|
+
# ─────────────────────────────────────────────────────────────────────────────
|
|
23
|
+
|
|
24
|
+
## Flours & dry goods ---------------------------------------------------------
|
|
25
|
+
all-purpose-flour: 125
|
|
26
|
+
plain-flour: 125
|
|
27
|
+
bread-flour: 127
|
|
28
|
+
whole-wheat-flour: 120
|
|
29
|
+
whole-meal-flour: 120
|
|
30
|
+
cake-flour: 114
|
|
31
|
+
semolina: 167
|
|
32
|
+
rye-flour: 102
|
|
33
|
+
almond-flour: 96
|
|
34
|
+
cornmeal: 122
|
|
35
|
+
cornstarch: 128
|
|
36
|
+
corn-flour: 128
|
|
37
|
+
rolled-oats: 90
|
|
38
|
+
breadcrumbs: 108
|
|
39
|
+
panko: 60
|
|
40
|
+
rice: 185
|
|
41
|
+
white-rice: 185
|
|
42
|
+
arborio-rice: 200
|
|
43
|
+
couscous: 173
|
|
44
|
+
quinoa: 170
|
|
45
|
+
|
|
46
|
+
## Sugars & sweeteners --------------------------------------------------------
|
|
47
|
+
granulated-sugar: 200
|
|
48
|
+
caster-sugar: 200
|
|
49
|
+
sugar: 200
|
|
50
|
+
brown-sugar: 213
|
|
51
|
+
light-brown-sugar: 213
|
|
52
|
+
dark-brown-sugar: 213
|
|
53
|
+
powdered-sugar: 120
|
|
54
|
+
confectioners-sugar: 120
|
|
55
|
+
icing-sugar: 120
|
|
56
|
+
honey: 340
|
|
57
|
+
maple-syrup: 322
|
|
58
|
+
molasses: 337
|
|
59
|
+
corn-syrup: 328
|
|
60
|
+
|
|
61
|
+
## Liquids & dairy ------------------------------------------------------------
|
|
62
|
+
water: 236
|
|
63
|
+
milk: 244
|
|
64
|
+
whole-milk: 244
|
|
65
|
+
buttermilk: 245
|
|
66
|
+
heavy-cream: 238
|
|
67
|
+
double-cream: 238
|
|
68
|
+
sour-cream: 230
|
|
69
|
+
yogurt: 245
|
|
70
|
+
greek-yogurt: 245
|
|
71
|
+
stock: 240
|
|
72
|
+
chicken-stock: 240
|
|
73
|
+
vegetable-stock: 240
|
|
74
|
+
wine: 235
|
|
75
|
+
white-wine: 235
|
|
76
|
+
red-wine: 235
|
|
77
|
+
vinegar: 239
|
|
78
|
+
soy-sauce: 255
|
|
79
|
+
lemon-juice: 244
|
|
80
|
+
lime-juice: 244
|
|
81
|
+
|
|
82
|
+
## Fats -----------------------------------------------------------------------
|
|
83
|
+
butter: 227
|
|
84
|
+
unsalted-butter: 227
|
|
85
|
+
salted-butter: 227
|
|
86
|
+
melted-butter: 227
|
|
87
|
+
olive-oil: 216
|
|
88
|
+
extra-virgin-olive-oil: 216
|
|
89
|
+
vegetable-oil: 218
|
|
90
|
+
canola-oil: 218
|
|
91
|
+
sesame-oil: 218
|
|
92
|
+
shortening: 205
|
|
93
|
+
|
|
94
|
+
## Seasonings & leaveners (small quantities — precision matters) --------------
|
|
95
|
+
table-salt: 292
|
|
96
|
+
fine-sea-salt: 288
|
|
97
|
+
sea-salt: 256
|
|
98
|
+
kosher-salt: 145 # Diamond Crystal; Morton is ~241 g/cup
|
|
99
|
+
salt: 292
|
|
100
|
+
baking-powder: 192
|
|
101
|
+
baking-soda: 220
|
|
102
|
+
active-dry-yeast: 150
|
|
103
|
+
instant-yeast: 150
|
|
104
|
+
ground-cinnamon: 132
|
|
105
|
+
ground-black-pepper: 138
|
|
106
|
+
|
|
107
|
+
## Chocolate, nuts & extras ---------------------------------------------------
|
|
108
|
+
cocoa-powder: 85
|
|
109
|
+
chocolate-chips: 170
|
|
110
|
+
semisweet-chocolate-chips: 170
|
|
111
|
+
dark-chocolate: 170
|
|
112
|
+
vanilla-extract: 208
|
|
113
|
+
peanut-butter: 258
|
|
114
|
+
tahini: 240
|
|
115
|
+
tomato-paste: 262
|
|
116
|
+
tomato-passata: 245
|
|
117
|
+
crushed-tomatoes: 245
|
|
118
|
+
grated-parmesan: 100
|
|
119
|
+
almonds: 143
|
|
120
|
+
walnuts: 117
|
|
121
|
+
pecans: 109
|
|
122
|
+
raisins: 145
|
data/_data/landing.yml
CHANGED
|
@@ -22,12 +22,15 @@ hero:
|
|
|
22
22
|
label: "Features"
|
|
23
23
|
url: "/features/"
|
|
24
24
|
icon: "bi-list-check"
|
|
25
|
-
|
|
25
|
+
# This hero is `bg-primary text-white`, so its outlined buttons need the
|
|
26
|
+
# light variant. Plain `outline` is an outlined PRIMARY button, for the
|
|
27
|
+
# normal page background — see components/cta-button.html.
|
|
28
|
+
variant: "outline-light"
|
|
26
29
|
cta_tertiary:
|
|
27
30
|
label: "GitHub"
|
|
28
31
|
url: "" # falls back to site.resources.github_repo
|
|
29
32
|
icon: "bi-github"
|
|
30
|
-
variant: "outline"
|
|
33
|
+
variant: "outline-light"
|
|
31
34
|
external: true
|
|
32
35
|
|
|
33
36
|
# Features section ------------------------------------------------------------
|
data/_data/navigation/main.yml
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
# Feature: ZER0-082
|
|
1
2
|
# Main Navigation Configuration
|
|
2
3
|
# Used by: _includes/navigation/navbar.html
|
|
3
4
|
# Purpose: Primary site navigation with dropdown children
|
|
@@ -45,6 +46,19 @@
|
|
|
45
46
|
- title: Test Notebook
|
|
46
47
|
url: /notebooks/test-notebook/
|
|
47
48
|
|
|
49
|
+
- title: Recipes
|
|
50
|
+
icon: bi-egg-fried
|
|
51
|
+
url: /recipes/
|
|
52
|
+
children:
|
|
53
|
+
- title: No-Knead Focaccia
|
|
54
|
+
url: /recipes/no-knead-focaccia/
|
|
55
|
+
- title: Brown Butter Cookies
|
|
56
|
+
url: /recipes/brown-butter-chocolate-chip-cookies/
|
|
57
|
+
- title: Tomato Butter Pasta
|
|
58
|
+
url: /recipes/weeknight-tomato-butter-pasta/
|
|
59
|
+
- title: How Recipes Work
|
|
60
|
+
url: /docs/features/cookbook-collection/
|
|
61
|
+
|
|
48
62
|
- title: Docs
|
|
49
63
|
icon: bi-journal-bookmark
|
|
50
64
|
url: /docs/
|
|
@@ -72,6 +86,8 @@
|
|
|
72
86
|
children:
|
|
73
87
|
- title: Features
|
|
74
88
|
url: /features/
|
|
89
|
+
- title: Design System
|
|
90
|
+
url: /design/
|
|
75
91
|
- title: Authors
|
|
76
92
|
url: /authors/
|
|
77
93
|
- title: Statistics
|
|
@@ -9,6 +9,10 @@
|
|
|
9
9
|
url: /quickstart/
|
|
10
10
|
expanded: true
|
|
11
11
|
children:
|
|
12
|
+
- title: "Site Builder (guided)"
|
|
13
|
+
url: /quickstart/site-builder/
|
|
14
|
+
icon: bi-magic
|
|
15
|
+
description: "Let Claude walk you from prerequisites to a running site"
|
|
12
16
|
- title: "1. Machine Setup"
|
|
13
17
|
url: /quickstart/machine-setup/
|
|
14
18
|
icon: bi-laptop
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# Feature: ZER0-084
|
|
2
|
+
# ─────────────────────────────────────────────────────────────────────────────
|
|
3
|
+
# Default courses / shelves for the zer0-mistakes `recipes` collection.
|
|
4
|
+
#
|
|
5
|
+
# The recipe index (components/recipe-index.html) groups recipes into sections
|
|
6
|
+
# by each recipe's `course:` front matter and reads the display metadata below
|
|
7
|
+
# as `site.data.recipe_courses[recipe.course]`. A consuming site can override
|
|
8
|
+
# this file with its own `_data/recipe_courses.yml`; a recipe with no `course`
|
|
9
|
+
# falls under `uncategorized`.
|
|
10
|
+
#
|
|
11
|
+
# Keys: title (heading), tagline (sub-heading), icon (Bootstrap Icons class),
|
|
12
|
+
# order (advisory rank for consumers that sort on it).
|
|
13
|
+
#
|
|
14
|
+
# Sections render in the order the courses appear IN THIS FILE — same rule as
|
|
15
|
+
# _data/series.yml — with any course used by a recipe but not declared here
|
|
16
|
+
# appended afterwards. To re-order the cookbook, move the blocks below.
|
|
17
|
+
# ─────────────────────────────────────────────────────────────────────────────
|
|
18
|
+
breakfast:
|
|
19
|
+
title: "Breakfast"
|
|
20
|
+
tagline: "The first thing you cook, and the hardest to get wrong twice."
|
|
21
|
+
icon: "bi-egg-fried"
|
|
22
|
+
order: 1
|
|
23
|
+
|
|
24
|
+
breads:
|
|
25
|
+
title: "Breads & Doughs"
|
|
26
|
+
tagline: "Flour, water, salt, time — ratio cooking at its purest."
|
|
27
|
+
icon: "bi-basket"
|
|
28
|
+
order: 2
|
|
29
|
+
|
|
30
|
+
mains:
|
|
31
|
+
title: "Mains"
|
|
32
|
+
tagline: "Dinner, scaled to whoever showed up."
|
|
33
|
+
icon: "bi-egg-fried"
|
|
34
|
+
order: 3
|
|
35
|
+
|
|
36
|
+
sides:
|
|
37
|
+
title: "Sides & Salads"
|
|
38
|
+
tagline: "The supporting cast that people actually remember."
|
|
39
|
+
icon: "bi-flower1"
|
|
40
|
+
order: 4
|
|
41
|
+
|
|
42
|
+
sauces:
|
|
43
|
+
title: "Sauces & Basics"
|
|
44
|
+
tagline: "Mother sauces, doughs, stocks — the building blocks."
|
|
45
|
+
icon: "bi-droplet-half"
|
|
46
|
+
order: 5
|
|
47
|
+
|
|
48
|
+
desserts:
|
|
49
|
+
title: "Desserts & Baking"
|
|
50
|
+
tagline: "Where measuring by weight stops being optional."
|
|
51
|
+
icon: "bi-cake2"
|
|
52
|
+
order: 6
|
|
53
|
+
|
|
54
|
+
drinks:
|
|
55
|
+
title: "Drinks"
|
|
56
|
+
tagline: "Scale by the glass or by the pitcher."
|
|
57
|
+
icon: "bi-cup-straw"
|
|
58
|
+
order: 7
|
|
59
|
+
|
|
60
|
+
uncategorized:
|
|
61
|
+
title: "More Recipes"
|
|
62
|
+
tagline: "Everything that has not found a shelf yet."
|
|
63
|
+
icon: "bi-journal-bookmark"
|
|
64
|
+
order: 99
|