jekyll-theme-zer0 1.27.0 → 1.28.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.
Files changed (78) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +386 -4
  3. data/_data/consumers.yml +147 -0
  4. data/_data/features.yml +77 -5
  5. data/_data/i18n/fr.yml +98 -0
  6. data/_data/i18n/manifest.yml +1502 -0
  7. data/_data/navigation/docs.yml +2 -0
  8. data/_data/navigation/main.yml +6 -0
  9. data/_data/series.yml +19 -0
  10. data/_data/theme-manifest.yml +348 -266
  11. data/_includes/README.md +21 -2
  12. data/_includes/analytics/google-tag-manager-body.html +11 -2
  13. data/_includes/analytics/google-tag-manager-head.html +16 -6
  14. data/_includes/analytics/posthog.html +33 -4
  15. data/_includes/components/abc-letter.html +43 -0
  16. data/_includes/components/book-card.html +42 -0
  17. data/_includes/components/book-nav.html +80 -0
  18. data/_includes/components/book-plate.html +31 -0
  19. data/_includes/components/book-toc.html +47 -0
  20. data/_includes/components/bookshelf.html +68 -0
  21. data/_includes/components/card-grid.html +60 -0
  22. data/_includes/components/data-card.html +95 -0
  23. data/_includes/components/halfmoon.html +5 -1
  24. data/_includes/components/page-feedback.html +65 -2
  25. data/_includes/components/theme-controls-bar.html +10 -2
  26. data/_includes/components/theme-customizer.html +8 -2
  27. data/_includes/content/seo.html +9 -3
  28. data/_includes/core/color-mode-init.html +13 -4
  29. data/_includes/core/favicon.html +46 -0
  30. data/_includes/core/head.html +9 -0
  31. data/_includes/custom/body-end.html +18 -0
  32. data/_includes/custom/body-start.html +17 -0
  33. data/_includes/custom/footer.html +18 -0
  34. data/_includes/custom/head.html +18 -0
  35. data/_includes/navigation/local-graph.html +28 -2
  36. data/_includes/navigation/nav-tree.html +3 -3
  37. data/_includes/navigation/sidebar-config.html +21 -0
  38. data/_includes/navigation/sidebar-nav.html +4 -0
  39. data/_includes/navigation/sidebar-pagetree.html +150 -0
  40. data/_includes/navigation/unified-drawer.html +8 -2
  41. data/_includes/obsidian/full-graph.html +165 -136
  42. data/_layouts/404.html +260 -0
  43. data/_layouts/README.md +2 -0
  44. data/_layouts/book-abc.html +106 -0
  45. data/_layouts/book-story.html +91 -0
  46. data/_layouts/book.html +113 -0
  47. data/_layouts/collection.html +17 -5
  48. data/_layouts/home.html +5 -2
  49. data/_layouts/landing.html +9 -0
  50. data/_layouts/news.html +155 -31
  51. data/_layouts/root.html +16 -2
  52. data/_layouts/section.html +57 -15
  53. data/_sass/components/_book.scss +423 -0
  54. data/_sass/core/_navbar.scss +13 -0
  55. data/_sass/core/_obsidian.scss +286 -6
  56. data/_sass/theme/_backgrounds.scss +21 -8
  57. data/assets/css/main.scss +1 -0
  58. data/assets/js/auto-hide-nav.js +5 -1
  59. data/assets/js/halfmoon.js +26 -0
  60. data/assets/js/obsidian-graph.js +702 -264
  61. data/assets/js/obsidian-local-graph.js +161 -54
  62. data/assets/js/search-modal.js +4 -1
  63. data/scripts/bin/manifest +31 -4
  64. data/scripts/bin/validate +5 -1
  65. data/scripts/install/README.md +47 -6
  66. data/scripts/install/ai/client.sh +302 -93
  67. data/scripts/install/ai/prompts/spec.schema.json +1 -1
  68. data/scripts/install/ai/wizard.sh +10 -5
  69. data/scripts/install/apply.sh +7 -3
  70. data/scripts/install/cli.sh +54 -4
  71. data/scripts/install/config.sh +167 -0
  72. data/scripts/install/doctor.sh +38 -0
  73. data/scripts/install/plan.sh +10 -0
  74. data/scripts/install/spec.sh +15 -7
  75. data/scripts/install/template.sh +4 -0
  76. data/scripts/propagate.rb +277 -0
  77. data/scripts/translate.rb +90 -0
  78. metadata +27 -2
data/_data/features.yml CHANGED
@@ -1413,14 +1413,14 @@ features:
1413
1413
  - "Optional Ruby plugin for self-builds"
1414
1414
 
1415
1415
  - id: ZER0-045
1416
- title: "Obsidian Local Graph Panel"
1417
- description: "Standalone neighborhood graph view for the current note, extracted as a reusable include for sidebars and modals"
1416
+ title: "Obsidian Graph Views (Full + Local)"
1417
+ description: "Obsidian-desktop-style graph views: a full site graph with a Filters/Display/Forces settings panel, collection legend-filters, tag:/path: search, zoom + fullscreen controls and hover previews, plus a per-page local graph panel with depth and direction controls"
1418
1418
  implemented: true
1419
- version: "1.4.0"
1419
+ version: "1.28.0"
1420
1420
  link: "/docs/obsidian/graph/"
1421
1421
  docs: "/docs/obsidian/graph/"
1422
1422
  tags: [obsidian, graph, visualization, navigation]
1423
- date: 2026-03-25
1423
+ date: 2026-08-08
1424
1424
  provenance:
1425
1425
  introduced_in: "1.4.0"
1426
1426
  pr: 77
@@ -1428,13 +1428,22 @@ features:
1428
1428
  issue: null
1429
1429
  tests:
1430
1430
  - "test/test_obsidian.sh"
1431
- - "test/visual/features/obsidian-callouts.spec.js"
1431
+ - "test/visual/features/obsidian-graph.spec.js"
1432
1432
  references:
1433
1433
  includes:
1434
1434
  - "_includes/obsidian/full-graph.html"
1435
1435
  - "_includes/navigation/local-graph.html"
1436
1436
  scripts:
1437
1437
  - "assets/js/obsidian-graph.js"
1438
+ - "assets/js/obsidian-local-graph.js"
1439
+ styles:
1440
+ - "_sass/core/_obsidian.scss"
1441
+ features:
1442
+ - "Filters: search with tag:/path: operators, per-collection toggles generated from the wiki-index (count + color swatch = legend), show-orphans, show-unresolved"
1443
+ - "Display: link arrows, node size, link thickness, label fade threshold — applied live"
1444
+ - "Forces: repel force + link distance sliders with animated re-layout; settings persist to localStorage"
1445
+ - "Hover preview card, zoom/fit/fullscreen stack, live dark-mode restyling"
1446
+ - "Local graph: depth selector (1-3) + outgoing/incoming switches, re-rendered in place"
1438
1447
 
1439
1448
  # ============================================================================
1440
1449
  # SETUP, NAVIGATION & DEVELOPER UX (v0.20+)
@@ -2184,3 +2193,66 @@ features:
2184
2193
  - "Manifest-driven SHA change detection, pruning of deleted sources, and generated /fr<en-url> permalinks (GitHub Pages safe-mode friendly)"
2185
2194
  - "Markdown-safe segment translation: code, Liquid, wiki-links and URLs masked as placeholders and validated"
2186
2195
  - "Navbar language toggle with availability states, hreflang alternates, per-page html lang, machine-translation notice"
2196
+
2197
+ - id: ZER0-079
2198
+ title: "Config-Driven Favicon and Browser Identity"
2199
+ description: "Head include emitting favicon, SVG icon, Apple touch icon, web manifest, and theme-color tags from an optional favicon config block, with an explicit /favicon.ico fallback that works on baseurl deployments"
2200
+ implemented: true
2201
+ version: "1.28.0"
2202
+ link: "/"
2203
+ docs: "/docs/features/favicon/"
2204
+ tags: [seo, branding, ui, configuration]
2205
+ date: 2026-07-22
2206
+ provenance:
2207
+ introduced_in: "1.28.0"
2208
+ pr: null
2209
+ commit: "a11e29f"
2210
+ issue: null
2211
+ tests:
2212
+ - "test/test_core.sh"
2213
+ references:
2214
+ includes:
2215
+ - "_includes/core/favicon.html"
2216
+ - "_includes/core/head.html"
2217
+ docs: "pages/_docs/features/favicon.md"
2218
+ features:
2219
+ - "Zero-config default: explicit /favicon.ico link on every page (fixes silent 404s and baseurl project sites)"
2220
+ - "Optional SVG favicon, PNG sizes, apple-touch-icon, and web manifest links"
2221
+ - "theme-color meta sourced from favicon.theme_color with fallback to theme_color.main design token"
2222
+
2223
+ - id: ZER0-080
2224
+ title: "Books Collection — Children's Picture-Book Publishing"
2225
+ description: "A `books` collection with immersive cover-to-cover layouts: book landing page (cover hero + TOC), story reading pages with illustration plates and prev/next navigation, bookshelf components, and AI-provenance colophons whose front matter doubles as the image-generation manifest"
2226
+ implemented: true
2227
+ version: "1.28.0"
2228
+ link: "/books/zer0-tales/"
2229
+ docs: "/docs/features/book-collection/"
2230
+ tags: [books, collections, layouts, storybook, ai-images, children]
2231
+ date: 2026-07-22
2232
+ provenance:
2233
+ introduced_in: "1.28.0"
2234
+ pr: 328
2235
+ commit: "1b521f6"
2236
+ issue: null
2237
+ tests:
2238
+ - "test/visual/features/books.spec.js"
2239
+ - "pages/_books/zer0-tales/index.md"
2240
+ references:
2241
+ layouts:
2242
+ - "_layouts/book.html"
2243
+ - "_layouts/book-story.html"
2244
+ includes:
2245
+ - "_includes/components/bookshelf.html"
2246
+ - "_includes/components/book-card.html"
2247
+ - "_includes/components/book-toc.html"
2248
+ - "_includes/components/book-nav.html"
2249
+ - "_includes/components/book-plate.html"
2250
+ styles:
2251
+ - "_sass/components/_book.scss"
2252
+ config: "_config.yml"
2253
+ docs: "pages/_docs/features/book-collection.md"
2254
+ features:
2255
+ - "Book = folder of chapters + index.md; numeric chapter: front matter drives TOC and prev/next ordering (no dates needed)"
2256
+ - "Immersive sidebar-free reading surface: storybook serif, responsive type scale, drop cap, plate styling for bare markdown images"
2257
+ - "illustrations: front matter renders a collapsed prompt colophon — the same list drives OpenAI image generation on consumer sites (drsai)"
2258
+ - "Demo book The Tales of Zer0 ships with the theme; reference platform: bamr87/drsai with Dodge & Reena as the test book"
data/_data/i18n/fr.yml ADDED
@@ -0,0 +1,98 @@
1
+ # ================================================================
2
+ # GENERATED FILE — do not edit by hand.
3
+ # Machine-translated UI strings (fr) produced by
4
+ # scripts/translate.rb from _data/ui-text.yml (en). Regenerate via
5
+ # the Translate workflow or: ruby scripts/translate.rb --langs fr
6
+ # ================================================================
7
+ skip_links: Liens d'évitement
8
+ skip_primary_nav: Aller à la navigation principale
9
+ skip_content: Aller au contenu
10
+ skip_main_content: Aller au contenu principal
11
+ skip_footer: Aller au pied de page
12
+ page: Page
13
+ pagination_previous: Précédent
14
+ pagination_next: Suivant
15
+ breadcrumb_home_label: Accueil
16
+ breadcrumb_separator: "/"
17
+ menu_label: Afficher/masquer le menu
18
+ search_label: Afficher/masquer la recherche
19
+ toc_label: Sur cette page
20
+ ext_link_label: Lien direct
21
+ less_than: moins de
22
+ minute_read: minute de lecture
23
+ share_on_label: Partager sur
24
+ tags_label: 'Étiquettes :'
25
+ categories_label: 'Catégories :'
26
+ date_label: 'Mis à jour :'
27
+ author_label: 'Auteur :'
28
+ comments_label: Laisser un commentaire
29
+ comments_title: Commentaires
30
+ more_label: En savoir plus
31
+ related_label: Vous aimerez peut-être aussi
32
+ follow_label: 'Suivre :'
33
+ feed_label: Flux
34
+ powered_by: Propulsé par
35
+ website_label: Site web
36
+ email_label: E-mail
37
+ recent_posts: Articles récents
38
+ undefined_wpm: Paramètre words_per_minute non défini dans _config.yml
39
+ comment_form_info: Votre adresse e-mail ne sera pas publiée. Les champs obligatoires
40
+ sont indiqués
41
+ comment_form_comment_label: Commentaire
42
+ comment_form_md_info: Le Markdown est pris en charge.
43
+ comment_form_name_label: Nom
44
+ comment_form_email_label: Adresse e-mail
45
+ comment_form_website_label: Site web (facultatif)
46
+ comment_btn_submit: Envoyer le commentaire
47
+ comment_btn_submitted: Envoyé
48
+ comment_success_msg: Merci pour votre commentaire ! Il apparaîtra sur le site une
49
+ fois approuvé.
50
+ comment_error_msg: Désolé, une erreur s'est produite lors de l'envoi. Veuillez vérifier
51
+ que tous les champs obligatoires sont remplis et réessayer.
52
+ loading_label: Chargement...
53
+ search_label_text: Saisissez votre terme de recherche...
54
+ search_placeholder_text: Saisissez votre terme de recherche...
55
+ search_no_results: Aucun résultat
56
+ results_found: Résultat(s) trouvé(s)
57
+ back_to_top: Retour en haut
58
+ stats_total_posts: Total des articles
59
+ stats_total_pages: Total des pages
60
+ stats_categories: Catégories
61
+ stats_tags: Étiquettes
62
+ stats_last_updated: Dernière mise à jour
63
+ stats_overview: Aperçu
64
+ stats_content_breakdown: Répartition du contenu
65
+ theme_toggle: Changer de thème
66
+ dark_mode: Mode sombre
67
+ light_mode: Mode clair
68
+ view_source: Voir la source
69
+ edit_page: Modifier cette page
70
+ report_issue: Signaler un problème
71
+ breadcrumbs_root: Accueil
72
+ breadcrumbs_aria: Fil d'Ariane
73
+ shortcuts_title: Raccourcis clavier
74
+ shortcuts_search: Ouvrir la recherche
75
+ shortcuts_prev_section: Section précédente
76
+ shortcuts_next_section: Section suivante
77
+ shortcuts_toggle_sidebar: Afficher/masquer la barre latérale
78
+ shortcuts_toggle_toc: Afficher/masquer la table des matières
79
+ shortcuts_show_help: Afficher cette aide
80
+ home_label: Accueil
81
+ main_nav_label: Navigation principale
82
+ search_button_label: Rechercher
83
+ settings_button_label: Paramètres
84
+ toc_title: Table des matières
85
+ published_label: Publié
86
+ updated_label: Mis à jour
87
+ reading_time_label: 'Temps de lecture estimé :'
88
+ reading_time_minute: minute
89
+ share_label: Partager
90
+ copy_link_label: Copier le lien
91
+ improve_label: Améliorer
92
+ edit_on_github: Modifier sur GitHub
93
+ lang_toggle_label: Langue
94
+ lang_toggle_aria: Changer de langue
95
+ lang_not_available: Pas encore traduit
96
+ machine_translation_notice: Cette page a été traduite automatiquement à partir de
97
+ l'original en anglais.
98
+ machine_translation_view_source: Voir l'original