jekyll-theme-zer0 0.22.21 → 0.22.22
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 +55 -0
- data/README.md +294 -23
- data/scripts/bin/install +717 -0
- data/scripts/bin/test +45 -2
- data/scripts/lib/install/README.md +63 -0
- data/scripts/lib/install/agents.sh +166 -0
- data/scripts/lib/install/ai/diagnose.sh +199 -0
- data/scripts/lib/install/ai/openai.sh +233 -0
- data/scripts/lib/install/ai/suggest.sh +182 -0
- data/scripts/lib/install/ai/wizard.sh +160 -0
- data/scripts/lib/install/config.sh +56 -0
- data/scripts/lib/install/deploy/README.md +52 -0
- data/scripts/lib/install/deploy/azure-swa.sh +50 -0
- data/scripts/lib/install/deploy/docker-prod.sh +71 -0
- data/scripts/lib/install/deploy/github-pages.sh +44 -0
- data/scripts/lib/install/deploy/registry.sh +190 -0
- data/scripts/lib/install/doctor.sh +301 -0
- data/scripts/lib/install/fs.sh +52 -0
- data/scripts/lib/install/logging.sh +33 -0
- data/scripts/lib/install/pages.sh +255 -0
- data/scripts/lib/install/platform.sh +71 -0
- data/scripts/lib/install/profile.sh +113 -0
- data/scripts/lib/install/template.sh +137 -0
- data/scripts/lib/install/upgrade.sh +184 -0
- data/scripts/lib/install/wizard_interactive.sh +189 -0
- metadata +24 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f5ef694da326e1ac7f10b1deed5494c749d5d28019158356306d07eec00b78dc
|
|
4
|
+
data.tar.gz: 84efeba1948bc0a9e6f87fae10b6581febcb91725cfd241fdfb7a2977276d8e5
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 63221ca36a87bea421089ce50e7b9556b94e9a5e4fd4e75e80f2493b0e4d51f24378dfa25b50033bc0cfb5fd8577da7f90c072d625197b9228d756b757539916
|
|
7
|
+
data.tar.gz: 31c6b963de682056a37292e9467873bcae14803efea508432756fccd0176c0668c80e8045e7459d30ed5549ac97adc2a03d9f8bebc9d320423b7e2605482fe05
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,60 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.22.22] - 2026-04-21
|
|
4
|
+
|
|
5
|
+
### Changed
|
|
6
|
+
- Version bump: patch release
|
|
7
|
+
|
|
8
|
+
### Commits in this release
|
|
9
|
+
- 36cd015 feat(installer)!: modular installer + AI + deploy targets + test matrix (#76)
|
|
10
|
+
- 555bead docs(readme): add AI-native branding and GitHub Actions automation section
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
## [Unreleased — targeting 1.0.0]
|
|
14
|
+
|
|
15
|
+
### ⚠️ Breaking changes (1.0.0 prep)
|
|
16
|
+
|
|
17
|
+
- **Modular installer.** The 2,400-line monolithic `install.sh` is decomposed into a CLI dispatcher (`scripts/bin/install`) backed by focused library modules (`scripts/lib/install/*.sh`) and declarative YAML profiles (`templates/profiles/*.yml`). The legacy `curl | bash` one-liner still works — it bootstraps the same pipeline.
|
|
18
|
+
- **Legacy mode flags deprecated.** `--full`, `--minimal`, `--fork`, `--remote`, `--github` continue to work in 1.0.x with a one-line deprecation warning. They map 1:1 to `install init --profile <name>`. Targeted removal: 2.0.
|
|
19
|
+
- **`--azure` flag removed.** Replaced by `install deploy azure-swa`. Old flag emits a clear error pointing at the new command.
|
|
20
|
+
- **Templates are the single source of truth.** Embedded heredoc fallbacks in `install.sh` are gone. A stripped distribution (theme tarball without `templates/`) will fail; the bootstrap downloads the templates tarball alongside `install.sh` for `curl | bash`.
|
|
21
|
+
|
|
22
|
+
See [`docs/installation/migration-from-0.x.md`](docs/installation/migration-from-0.x.md) for the full flag-by-flag mapping.
|
|
23
|
+
|
|
24
|
+
### Added (Phases 1-7 of the installer refactor)
|
|
25
|
+
|
|
26
|
+
- **`scripts/bin/install`** — canonical CLI with subcommands: `init`, `wizard [--ai]`, `agents`, `deploy`, `doctor [--ai] [--quiet] [--json]`, `diagnose [--ai]`, `upgrade`, `list-profiles`, `list-targets`, `version`, `help`.
|
|
27
|
+
- **`scripts/lib/install/`** — focused modules: `core`, `platform`, `template`, `fs`, `config`, `pages`, `profile`, `wizard_interactive`, `doctor`, `upgrade`, `agents`, `ai/{openai,wizard,diagnose,suggest}`, `deploy/{registry,github-pages,azure-swa,docker-prod}`. All bash 3.2 compatible.
|
|
28
|
+
- **`templates/profiles/*.yml`** — declarative profile manifests (`full`, `minimal`, `fork`, `remote`, `github`).
|
|
29
|
+
- **`templates/deploy/<target>/`** — pluggable deploy templates (workflow YAMLs, Dockerfile, nginx.conf).
|
|
30
|
+
- **`templates/agents/`** — distributable AI agent guidance (CLAUDE.md, aider.conf.yml templates).
|
|
31
|
+
- **`templates/ai/prompts/`** — system prompts for AI subcommands.
|
|
32
|
+
- **`.zer0-installed` marker file** — tracks installed theme version for idempotent `install upgrade`.
|
|
33
|
+
- **AI integration (opt-in, sandboxed):** `install wizard --ai` (OpenAI-backed `_config.yml` generation), `install diagnose --ai` (unified-diff patch proposals), `install deploy --ai-suggest` (deploy-target recommendation). Honors `ZER0_NO_AI=1` kill switch. All payloads sanitized; all writes diffed before confirmation.
|
|
34
|
+
- **`install doctor`** — platform/tooling/site/AI health check with PASS/WARN/FAIL counters, `--quiet` and `--json` modes. Used as preflight in `install init` (opt out with `--skip-doctor`).
|
|
35
|
+
- **`install upgrade`** — idempotent in-place upgrade tracked via `.zer0-installed`. `--from`, `--force`, `--dry-run`, `--auto-accept`. Refreshes agents and checks deploy-workflow drift.
|
|
36
|
+
- **`docs/installation/`** — full doc tree: `index`, `architecture`, `profiles`, `deploy-targets`, `ai-features`, `migration-from-0.x`, `customization`.
|
|
37
|
+
- **`.github/instructions/install.instructions.md`** — agent guidance for installer code (`applyTo: scripts/lib/install/**, scripts/bin/install, install.sh, templates/{profiles,deploy,agents,ai}/**`).
|
|
38
|
+
- **`.github/workflows/doctor.yml`** — CI matrix (ubuntu-latest, macos-latest) running `install doctor --json` on every push/PR touching installer code.
|
|
39
|
+
- **`.github/workflows/install-matrix.yml`** — full installer e2e matrix (ubuntu-latest + macos-latest × ruby 2.7/3.0/3.2) plus a `curl|bash` bootstrap smoke job. Runs on installer-touching PRs, weekly drift schedule, and `workflow_dispatch`.
|
|
40
|
+
- **Installer e2e suites** under `test/`:
|
|
41
|
+
- `test_install_profiles.sh` — every profile produces its expected file tree
|
|
42
|
+
- `test_install_deploy.sh` — every deploy target writes valid workflow YAML / Dockerfile
|
|
43
|
+
- `test_install_ai_mock.sh` — `doctor --ai` and `diagnose` survive without `OPENAI_API_KEY`
|
|
44
|
+
- `test_install_legacy_flags.sh` — `install.sh --minimal` / `--full` still produce expected layouts
|
|
45
|
+
- `test_install_idempotency.sh` — re-running install is safe; `_config.yml` stays parseable; backup creep guarded
|
|
46
|
+
- **`scripts/bin/test install`** — new test-suite group that executes all `test/test_install_*.sh` files.
|
|
47
|
+
|
|
48
|
+
### Fixed
|
|
49
|
+
|
|
50
|
+
- `install.sh` — `gh_args[@]: unbound variable` crash when invoking the github profile with no fork environment variables set (`set -u` + empty array). Guarded with `${gh_args[@]+"${gh_args[@]}"}`.
|
|
51
|
+
|
|
52
|
+
### Changed
|
|
53
|
+
|
|
54
|
+
- `README.md` Installation Methods section now references the modular CLI alongside the legacy one-liner.
|
|
55
|
+
- `docs/FORKING.md` includes an `install init --profile fork` flow alongside the standalone `fork-cleanup.sh` script.
|
|
56
|
+
- `AGENTS.md` instruction map adds the new install instructions row.
|
|
57
|
+
|
|
3
58
|
## [0.22.21] - 2026-04-19
|
|
4
59
|
|
|
5
60
|
### Changed
|
data/README.md
CHANGED
|
@@ -1,20 +1,26 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: zer0-mistakes
|
|
3
|
-
sub-title: Jekyll Theme
|
|
4
|
-
description: GitHub Pages
|
|
5
|
-
version: 0.22.
|
|
3
|
+
sub-title: AI-Native Jekyll Theme
|
|
4
|
+
description: AI-native Jekyll theme for GitHub Pages — Docker-first development, AI-powered installation, multi-agent integration (Copilot, Codex, Cursor, Claude), AI preview-image generation, and AIEO content optimization with Bootstrap 5.3.
|
|
5
|
+
version: 0.22.22
|
|
6
6
|
layout: landing
|
|
7
7
|
tags:
|
|
8
8
|
- jekyll
|
|
9
9
|
- docker
|
|
10
10
|
- remote-theme
|
|
11
11
|
- github-pages
|
|
12
|
+
- ai
|
|
13
|
+
- ai-automation
|
|
14
|
+
- ai-integration
|
|
15
|
+
- copilot
|
|
16
|
+
- aieo
|
|
12
17
|
categories:
|
|
13
18
|
- jekyll-theme
|
|
14
19
|
- docker
|
|
15
20
|
- bootstrap
|
|
21
|
+
- ai-tooling
|
|
16
22
|
created: 2024-02-10T23:51:11.480Z
|
|
17
|
-
lastmod: 2026-04-
|
|
23
|
+
lastmod: 2026-04-21T04:05:24.000Z
|
|
18
24
|
draft: false
|
|
19
25
|
permalink: /
|
|
20
26
|
slug: zer0
|
|
@@ -23,13 +29,19 @@ keywords:
|
|
|
23
29
|
- docker
|
|
24
30
|
- remote-theme
|
|
25
31
|
- github-pages
|
|
32
|
+
- ai-native jekyll theme
|
|
33
|
+
- ai-powered installation
|
|
34
|
+
- github copilot integration
|
|
35
|
+
- cursor agent
|
|
36
|
+
- aieo optimization
|
|
37
|
+
- ai preview image generation
|
|
26
38
|
date: 2026-03-29T12:00:00.000Z
|
|
27
|
-
snippet:
|
|
39
|
+
snippet: AI-native Jekyll theme — automated, agent-friendly, AIEO-optimized
|
|
28
40
|
comments: true
|
|
29
41
|
mermaid: true
|
|
30
42
|
preview: /assets/images/wizard-on-journey.png
|
|
31
43
|
hero_image: /assets/images/wizard-on-journey.png
|
|
32
|
-
excerpt: "
|
|
44
|
+
excerpt: "AI-native Jekyll theme for GitHub Pages — multi-agent ready (Copilot, Codex, Cursor, Claude), AI-powered install & preview images, AIEO-optimized, with Docker-first development and 43 documented features"
|
|
33
45
|
---
|
|
34
46
|
|
|
35
47
|
[](https://github.com/bamr87/zer0-mistakes/actions/workflows/pages/pages-build-deployment)
|
|
@@ -38,14 +50,18 @@ excerpt: "Professional Jekyll theme for GitHub Pages with Bootstrap 5.3, automat
|
|
|
38
50
|
[](https://opensource.org/licenses/MIT)
|
|
39
51
|
[](https://github.com/bamr87/zer0-mistakes/blob/main/docker-compose.yml)
|
|
40
52
|
[](https://getbootstrap.com/)
|
|
53
|
+
[](AGENTS.md)
|
|
54
|
+
[](#-aieo-optimized--built-for-ai-citation)
|
|
41
55
|
|
|
42
56
|
# 🚀 zer0-mistakes
|
|
43
57
|
|
|
44
|
-
###
|
|
58
|
+
### The AI-Native Jekyll Theme for GitHub Pages
|
|
45
59
|
|
|
46
|
-
**
|
|
60
|
+
**AI-augmented • Agent-ready • Docker-first • Bootstrap 5.3 • Privacy-compliant • Zero-configuration**
|
|
47
61
|
|
|
48
|
-
|
|
62
|
+
Built from the ground up to **automate, facilitate, and integrate** with modern AI workflows — from one-line self-healing install to multi-agent code guidance ([Copilot](https://github.com/features/copilot), [Codex](https://openai.com/codex), [Cursor](https://cursor.com/), [Claude Code](https://www.claude.com/product/claude-code), [Aider](https://aider.chat/)) to AI-generated preview images and AIEO content optimization for AI citation.
|
|
63
|
+
|
|
64
|
+
[Quick Start](#-quick-start) • [AI Workflow](#-ai-native-workflow) • [Features](#-key-features) • [Documentation](#-documentation) • [Contributing](CONTRIBUTING.md)
|
|
49
65
|
|
|
50
66
|
---
|
|
51
67
|
|
|
@@ -53,6 +69,7 @@ excerpt: "Professional Jekyll theme for GitHub Pages with Bootstrap 5.3, automat
|
|
|
53
69
|
|
|
54
70
|
- [Overview](#overview)
|
|
55
71
|
- [Quick Start](#-quick-start)
|
|
72
|
+
- [AI-Native Workflow](#-ai-native-workflow)
|
|
56
73
|
- [Architecture](#-architecture)
|
|
57
74
|
- [Key Features](#-key-features)
|
|
58
75
|
- [Installation Methods](#-installation-methods)
|
|
@@ -72,7 +89,15 @@ excerpt: "Professional Jekyll theme for GitHub Pages with Bootstrap 5.3, automat
|
|
|
72
89
|
|
|
73
90
|
## Overview
|
|
74
91
|
|
|
75
|
-
**zer0-mistakes** is
|
|
92
|
+
**zer0-mistakes** is an **AI-native** Jekyll theme engineered to eliminate setup friction and accelerate every stage of the content lifecycle with AI automation, facilitation, and integration. Docker containerization, multi-agent guidance files, AI-powered tooling, and 43 documented features take you from zero to deployed — and zero to AI-collaborative — in under 5 minutes.
|
|
93
|
+
|
|
94
|
+
**AI is a first-class citizen, not an afterthought:**
|
|
95
|
+
|
|
96
|
+
- 🤖 **AI-powered installation** — `install.sh` self-heals across macOS / Linux / Windows (WSL) with ~95% success rate
|
|
97
|
+
- 🧠 **Multi-agent integration** — Drop-in [`AGENTS.md`](AGENTS.md) + `.github/copilot-instructions.md` + `.github/instructions/*.instructions.md` + `.github/prompts/*.prompt.md` + `.cursor/commands/` work with Copilot, Codex, Cursor, Claude Code, Aider, Jules, Continue
|
|
98
|
+
- 🎨 **AI preview-image generation** — Jekyll plugin + script generate OpenAI/DALL·E images for posts missing previews ([`_plugins/preview_image_generator.rb`](_plugins/preview_image_generator.rb))
|
|
99
|
+
- 🤝 **AI-facilitated releases** — Conventional-commit analyzer auto-determines semantic version bumps and writes the changelog ([`scripts/analyze-commits.sh`](scripts/analyze-commits.sh))
|
|
100
|
+
- 🔍 **AIEO-optimized output** — Structured data, entity density, FAQ schema, and definitional precision so AI engines cite your site accurately
|
|
76
101
|
|
|
77
102
|
```mermaid
|
|
78
103
|
graph LR
|
|
@@ -106,6 +131,10 @@ graph LR
|
|
|
106
131
|
| **Platform Support** | Limited | **Universal** ([macOS, Linux, Windows/WSL via Docker](https://github.com/bamr87/zer0-mistakes/blob/main/docker-compose.yml)) |
|
|
107
132
|
| **Error Handling** | Manual debugging | **Automated** |
|
|
108
133
|
| **Dependencies** | Ruby + Bundler + Jekyll | **Docker only** |
|
|
134
|
+
| **AI Agent Integration** | None / DIY | **Built-in** ([`AGENTS.md`](AGENTS.md) + Copilot / Codex / Cursor / Claude / Aider guidance) |
|
|
135
|
+
| **AI Content Tooling** | None | **First-class** (AI preview images, AIEO schema, prompt library) |
|
|
136
|
+
| **Release Automation** | Manual versioning | **AI-facilitated** ([commit-analyzer](scripts/analyze-commits.sh) → semantic bump + changelog) |
|
|
137
|
+
| **AI Discoverability** | None | **AIEO-optimized** ([structured data, FAQ schema, entity density](#-aieo-optimized--built-for-ai-citation)) |
|
|
109
138
|
|
|
110
139
|
---
|
|
111
140
|
|
|
@@ -152,6 +181,89 @@ sequenceDiagram
|
|
|
152
181
|
|
|
153
182
|
---
|
|
154
183
|
|
|
184
|
+
## 🤖 AI-Native Workflow
|
|
185
|
+
|
|
186
|
+
zer0-mistakes treats AI as core infrastructure across **install → author → build → release → discover**. Every layer is wired for **automation, facilitation, and integration** with the AI tools you already use.
|
|
187
|
+
|
|
188
|
+
```mermaid
|
|
189
|
+
flowchart LR
|
|
190
|
+
subgraph Install["🤖 AI Install"]
|
|
191
|
+
I1[install.sh<br/>self-healing]
|
|
192
|
+
end
|
|
193
|
+
subgraph Author["🧠 AI Authoring"]
|
|
194
|
+
A1[Copilot]
|
|
195
|
+
A2[Codex]
|
|
196
|
+
A3[Cursor]
|
|
197
|
+
A4[Claude Code]
|
|
198
|
+
A5[Aider]
|
|
199
|
+
end
|
|
200
|
+
subgraph Build["🎨 AI Content"]
|
|
201
|
+
B1[OpenAI<br/>Preview Images]
|
|
202
|
+
B2[AI Frontmatter<br/>Maintainer prompt]
|
|
203
|
+
end
|
|
204
|
+
subgraph Release["🚀 AI Release"]
|
|
205
|
+
R1[Commit Analyzer]
|
|
206
|
+
R2[Auto Changelog]
|
|
207
|
+
R3[Semantic Bump]
|
|
208
|
+
end
|
|
209
|
+
subgraph Discover["🔍 AIEO Discovery"]
|
|
210
|
+
D1[JSON-LD Schema]
|
|
211
|
+
D2[FAQ + Glossary]
|
|
212
|
+
D3[Entity Density]
|
|
213
|
+
end
|
|
214
|
+
|
|
215
|
+
Install --> Author --> Build --> Release --> Discover
|
|
216
|
+
|
|
217
|
+
style Install fill:#e3f2fd
|
|
218
|
+
style Author fill:#f3e5f5
|
|
219
|
+
style Build fill:#fff3e0
|
|
220
|
+
style Release fill:#e8f5e9
|
|
221
|
+
style Discover fill:#fce4ec
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
### What's wired for AI
|
|
225
|
+
|
|
226
|
+
| Capability | What it does | Where it lives |
|
|
227
|
+
|---|---|---|
|
|
228
|
+
| **Self-healing install** | Detects platform, fixes Docker/Jekyll issues, retries with fallbacks | [`install.sh`](install.sh) |
|
|
229
|
+
| **Cross-tool agent guide** | Single entry point for any [agents.md](https://agents.md/)-aware AI tool | [`AGENTS.md`](AGENTS.md) |
|
|
230
|
+
| **Copilot project context** | Architecture, conventions, commands, release flow | [`.github/copilot-instructions.md`](.github/copilot-instructions.md) |
|
|
231
|
+
| **File-scoped instructions** | `applyTo:` globs auto-load guidance for `_layouts/`, `_includes/`, `scripts/`, `test/`, `docs/`, version files | [`.github/instructions/`](.github/instructions/) |
|
|
232
|
+
| **Reusable agent prompts** | `commit-publish`, `frontmatter-maintainer`, `seed` (full-rebuild blueprint) | [`.github/prompts/`](.github/prompts/) |
|
|
233
|
+
| **Cursor slash-commands** | Mirrors prompts as `/commit-publish`, `/frontend-run-improve` | [`.cursor/commands/`](.cursor/commands/) |
|
|
234
|
+
| **AI preview images** | Jekyll plugin + script generate OpenAI/DALL·E images for posts missing previews | [`_plugins/preview_image_generator.rb`](_plugins/preview_image_generator.rb), [`scripts/generate-preview-images.sh`](scripts/generate-preview-images.sh) |
|
|
235
|
+
| **AI release pipeline** | Conventional-commit analyzer chooses MAJOR/MINOR/PATCH, writes CHANGELOG, tags & publishes | [`scripts/analyze-commits.sh`](scripts/analyze-commits.sh), [`scripts/bin/release`](scripts/bin/release) |
|
|
236
|
+
| **AIEO content layer** | `SoftwareApplication`, `WebPage`, `FAQPage`, `Person` JSON-LD; glossary; FAQ; dated roadmap | [See AIEO section](#-aieo-optimized--built-for-ai-citation) |
|
|
237
|
+
|
|
238
|
+
### Quick AI tasks
|
|
239
|
+
|
|
240
|
+
```bash
|
|
241
|
+
# Generate AI preview images for posts missing previews (needs OPENAI_API_KEY)
|
|
242
|
+
./scripts/generate-preview-images.sh --collection posts
|
|
243
|
+
|
|
244
|
+
# Preview before generating (no API calls)
|
|
245
|
+
./scripts/generate-preview-images.sh --dry-run --verbose
|
|
246
|
+
|
|
247
|
+
# Let AI analyze commits and propose the next version bump
|
|
248
|
+
./scripts/analyze-commits.sh HEAD~10..HEAD
|
|
249
|
+
|
|
250
|
+
# Run the AI-facilitated release pipeline (validate → version → changelog → publish)
|
|
251
|
+
./scripts/bin/release patch --dry-run
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
### Drop-in for any AI editor
|
|
255
|
+
|
|
256
|
+
Clone the repo (or fork) and your editor's AI agent will pick up project context automatically:
|
|
257
|
+
|
|
258
|
+
- **GitHub Copilot / VS Code** → reads [`.github/copilot-instructions.md`](.github/copilot-instructions.md) + `.github/instructions/*.instructions.md`
|
|
259
|
+
- **Cursor** → reads `.cursor/commands/` for slash-commands; falls back to `AGENTS.md`
|
|
260
|
+
- **Claude Code / Codex / Aider / Jules / Continue** → read [`AGENTS.md`](AGENTS.md) per the [agents.md](https://agents.md/) convention
|
|
261
|
+
- **Custom agents** → Load layered guidance from [`.github/`](.github/) on demand
|
|
262
|
+
|
|
263
|
+
> No configuration required. The guidance is layered — agents read only what's needed for the file they're touching.
|
|
264
|
+
|
|
265
|
+
---
|
|
266
|
+
|
|
155
267
|
## 🏗 Architecture
|
|
156
268
|
|
|
157
269
|
### System Overview
|
|
@@ -209,10 +321,11 @@ flowchart TB
|
|
|
209
321
|
|
|
210
322
|
```mermaid
|
|
211
323
|
pie title Technology Distribution
|
|
212
|
-
"Jekyll (Static Gen)" :
|
|
213
|
-
"Bootstrap 5.3 (UI)" :
|
|
214
|
-
"Docker (Dev Env)" :
|
|
215
|
-
"
|
|
324
|
+
"Jekyll (Static Gen)" : 25
|
|
325
|
+
"Bootstrap 5.3 (UI)" : 20
|
|
326
|
+
"Docker (Dev Env)" : 18
|
|
327
|
+
"AI Tooling & Agents" : 15
|
|
328
|
+
"Liquid (Templates)" : 12
|
|
216
329
|
"PostHog (Analytics)" : 10
|
|
217
330
|
```
|
|
218
331
|
|
|
@@ -223,6 +336,10 @@ pie title Technology Distribution
|
|
|
223
336
|
| **Icons** | Bootstrap Icons | Unified iconography |
|
|
224
337
|
| **Development** | Docker | Cross-platform consistency |
|
|
225
338
|
| **Templates** | Liquid | Dynamic content rendering |
|
|
339
|
+
| **AI Agents** | Copilot · Codex · Cursor · Claude Code · Aider · Jules · Continue | Multi-tool agentic development via [`AGENTS.md`](AGENTS.md) + `.github/instructions/` |
|
|
340
|
+
| **AI Content** | OpenAI Images API | AI-generated preview images via [`_plugins/preview_image_generator.rb`](_plugins/preview_image_generator.rb) |
|
|
341
|
+
| **AI Automation** | Conventional-commit analyzer | Auto semantic versioning + changelog ([`scripts/analyze-commits.sh`](scripts/analyze-commits.sh)) |
|
|
342
|
+
| **AIEO** | JSON-LD + FAQ + Glossary schema | Optimized for AI citation and retrieval |
|
|
226
343
|
| **Analytics** | PostHog | Privacy-first tracking |
|
|
227
344
|
| **Diagrams** | Mermaid 10+ | Documentation visuals |
|
|
228
345
|
| **Navigation** | ES6 Modules | Modular JavaScript architecture |
|
|
@@ -387,12 +504,27 @@ Built-in GDPR/CCPA compliant documentation:
|
|
|
387
504
|
|
|
388
505
|
## 📦 Installation Methods
|
|
389
506
|
|
|
507
|
+
> **New in 1.0:** the installer is now a modular CLI (`scripts/bin/install`) with subcommands and declarative profiles. The classic `curl | bash` one-liner still works — it bootstraps the same pipeline. See [docs/installation/](docs/installation/index.md) for the full guide and [docs/installation/migration-from-0.x.md](docs/installation/migration-from-0.x.md) for the 0.x → 1.0 flag mapping.
|
|
508
|
+
|
|
390
509
|
### Method 1: AI-Powered Install (Recommended)
|
|
391
510
|
|
|
392
511
|
```bash
|
|
393
512
|
curl -fsSL https://raw.githubusercontent.com/bamr87/zer0-mistakes/main/install.sh | bash
|
|
394
513
|
```
|
|
395
514
|
|
|
515
|
+
### Method 1b: Modular CLI (Local Clone)
|
|
516
|
+
|
|
517
|
+
```bash
|
|
518
|
+
git clone https://github.com/bamr87/zer0-mistakes.git
|
|
519
|
+
./zer0-mistakes/scripts/bin/install help
|
|
520
|
+
./zer0-mistakes/scripts/bin/install init --profile full /path/to/new-site
|
|
521
|
+
./zer0-mistakes/scripts/bin/install deploy github-pages,docker-prod /path/to/new-site
|
|
522
|
+
./zer0-mistakes/scripts/bin/install doctor /path/to/new-site # health check
|
|
523
|
+
./zer0-mistakes/scripts/bin/install agents /path/to/new-site --all # AI agent guidance
|
|
524
|
+
```
|
|
525
|
+
|
|
526
|
+
Available subcommands: `init`, `wizard [--ai]`, `agents`, `deploy`, `doctor`, `diagnose [--ai]`, `upgrade`, `list-profiles`, `list-targets`, `version`, `help`.
|
|
527
|
+
|
|
396
528
|
### Method 2: Remote Theme (GitHub Pages)
|
|
397
529
|
|
|
398
530
|
```yaml
|
|
@@ -706,6 +838,137 @@ bash scripts/release major # 0.21.5 → 1.0.0
|
|
|
706
838
|
|
|
707
839
|
---
|
|
708
840
|
|
|
841
|
+
## ⚙️ GitHub Actions Automation
|
|
842
|
+
|
|
843
|
+
zer0-mistakes ships with a **complete CI/CD and automation suite** powered by [GitHub Actions](https://github.com/bamr87/zer0-mistakes/actions). Every workflow is opinionated, tested, and ready to fork — push to `main` and the entire pipeline (test → version → publish → release) runs automatically.
|
|
844
|
+
|
|
845
|
+
### Workflow Catalogue
|
|
846
|
+
|
|
847
|
+
All workflows live under [`.github/workflows/`](.github/workflows/).
|
|
848
|
+
|
|
849
|
+
| # | Workflow | File | Trigger | Purpose |
|
|
850
|
+
|---|----------|------|---------|---------|
|
|
851
|
+
| 1 | **Comprehensive CI Pipeline** | [`ci.yml`](.github/workflows/ci.yml) | push / PR / dispatch | Detect changes → fast checks → quality control → matrix test suite (Ruby 3.3) → integration tests → build & validate |
|
|
852
|
+
| 2 | **TEST (Latest Dependencies)** | [`test-latest.yml`](.github/workflows/test-latest.yml) | scheduled / dispatch | Zero-pin Docker build with bleeding-edge gems; promotes only passing images |
|
|
853
|
+
| 3 | **Update Dependencies** | [`update-dependencies.yml`](.github/workflows/update-dependencies.yml) | weekly schedule | Refreshes `Gemfile.lock` to latest compatible versions and opens an automated PR |
|
|
854
|
+
| 4 | **CodeQL Security Scanning** | [`codeql.yml`](.github/workflows/codeql.yml) | push / PR on code paths | Static security analysis across Ruby, JavaScript, TypeScript, Python, YAML, plugins, scripts |
|
|
855
|
+
| 5 | **Version Bump** | [`version-bump.yml`](.github/workflows/version-bump.yml) | push to main / dispatch | Analyzes conventional commits, determines MAJOR/MINOR/PATCH bump, updates `version.rb` + CHANGELOG, creates tag |
|
|
856
|
+
| 6 | **Release (Gem + GitHub)** | [`release.yml`](.github/workflows/release.yml) | tag `v*` / dispatch | Pre-release validation → build assets → publish to [RubyGems](https://rubygems.org/gems/jekyll-theme-zer0) → create GitHub Release |
|
|
857
|
+
| 7 | **Convert Jupyter Notebooks** | [`convert-notebooks.yml`](.github/workflows/convert-notebooks.yml) | push to `pages/_notebooks/**.ipynb` | Auto-converts `.ipynb` → Jekyll-friendly Markdown with extracted images |
|
|
858
|
+
| 8 | **Roadmap Sync** | [`roadmap-sync.yml`](.github/workflows/roadmap-sync.yml) | push affecting `_data/roadmap.yml` | Regenerates the README roadmap section from data; fails PRs with stale README |
|
|
859
|
+
| 9 | **New Site Setup** | [`setup-template.yml`](.github/workflows/setup-template.yml) | first push after template/fork | Creates a PR with prefilled `_config.yml` so a new site is ready to merge & go |
|
|
860
|
+
|
|
861
|
+
> 💡 GitHub Pages adds an additional managed `pages-build-deployment` run on every push to `main`.
|
|
862
|
+
|
|
863
|
+
### Pipeline Topology
|
|
864
|
+
|
|
865
|
+
```mermaid
|
|
866
|
+
flowchart LR
|
|
867
|
+
subgraph Devloop["🧑💻 Developer Loop"]
|
|
868
|
+
PR[Pull Request]
|
|
869
|
+
PUSH[Push to main]
|
|
870
|
+
end
|
|
871
|
+
|
|
872
|
+
subgraph Continuous["🧪 Continuous Integration"]
|
|
873
|
+
CI[ci.yml<br/>Comprehensive CI]
|
|
874
|
+
CODEQL[codeql.yml<br/>Security Scan]
|
|
875
|
+
TESTLATEST[test-latest.yml<br/>Latest Deps]
|
|
876
|
+
end
|
|
877
|
+
|
|
878
|
+
subgraph Maintenance["🔧 Maintenance"]
|
|
879
|
+
DEPS[update-dependencies.yml<br/>Weekly Bump]
|
|
880
|
+
ROADMAP[roadmap-sync.yml<br/>README Sync]
|
|
881
|
+
NOTEBOOKS[convert-notebooks.yml<br/>.ipynb → .md]
|
|
882
|
+
end
|
|
883
|
+
|
|
884
|
+
subgraph Releaseflow["🚀 Release Pipeline"]
|
|
885
|
+
BUMP[version-bump.yml<br/>Semantic Bump]
|
|
886
|
+
RELEASE[release.yml<br/>Gem + GitHub Release]
|
|
887
|
+
PAGES[pages-build-deployment<br/>GitHub Pages]
|
|
888
|
+
end
|
|
889
|
+
|
|
890
|
+
subgraph Bootstrap["🌱 Bootstrap"]
|
|
891
|
+
SETUP[setup-template.yml<br/>New Site Setup]
|
|
892
|
+
end
|
|
893
|
+
|
|
894
|
+
PR --> CI
|
|
895
|
+
PR --> CODEQL
|
|
896
|
+
PUSH --> CI
|
|
897
|
+
PUSH --> CODEQL
|
|
898
|
+
PUSH --> ROADMAP
|
|
899
|
+
PUSH --> NOTEBOOKS
|
|
900
|
+
PUSH --> BUMP
|
|
901
|
+
BUMP -->|tag v*| RELEASE
|
|
902
|
+
PUSH --> PAGES
|
|
903
|
+
DEPS -.->|opens PR| PR
|
|
904
|
+
SETUP -.->|first push| PR
|
|
905
|
+
|
|
906
|
+
style Continuous fill:#e3f2fd
|
|
907
|
+
style Maintenance fill:#fff3e0
|
|
908
|
+
style Releaseflow fill:#e8f5e9
|
|
909
|
+
style Bootstrap fill:#f3e5f5
|
|
910
|
+
```
|
|
911
|
+
|
|
912
|
+
### What it looks like
|
|
913
|
+
|
|
914
|
+
#### 🗂 Actions overview — every workflow at a glance
|
|
915
|
+
|
|
916
|
+

|
|
917
|
+
|
|
918
|
+
The Actions tab gives you a real-time activity feed — every push to `main` triggers a coordinated set of workflows that you can audit, re-run, or dispatch manually.
|
|
919
|
+
|
|
920
|
+
#### 🚀 Release pipeline — automated gem + GitHub release
|
|
921
|
+
|
|
922
|
+

|
|
923
|
+
|
|
924
|
+
A single tag (`v0.22.21`) — or one click on **Run workflow** — runs the entire publish pipeline in under two minutes. The job graph makes the dependency chain visible: validate → build → publish to [RubyGems](https://rubygems.org/gems/jekyll-theme-zer0) → cut the [GitHub Release](https://github.com/bamr87/zer0-mistakes/releases). No manual `gem push`, no manual changelog edit, no missed step.
|
|
925
|
+
|
|
926
|
+
#### 🧪 Comprehensive CI — parallel quality gates
|
|
927
|
+
|
|
928
|
+

|
|
929
|
+
|
|
930
|
+
CI fans out across **change detection → fast checks → quality control → matrix test suite → integration tests → build & validate**, with annotations surfacing test failures and deprecations directly in the run summary.
|
|
931
|
+
|
|
932
|
+
#### 🚦 Per-workflow run history
|
|
933
|
+
|
|
934
|
+

|
|
935
|
+
|
|
936
|
+
Each workflow has its own run history with branch filters, status badges, and per-job durations — easy to spot regressions or compare runs across branches.
|
|
937
|
+
|
|
938
|
+
### Trigger guide
|
|
939
|
+
|
|
940
|
+
Use these to invoke automation without leaving your terminal:
|
|
941
|
+
|
|
942
|
+
```bash
|
|
943
|
+
# List recent workflow runs
|
|
944
|
+
gh run list --repo bamr87/zer0-mistakes --limit 10
|
|
945
|
+
|
|
946
|
+
# Manually dispatch a release
|
|
947
|
+
gh workflow run release.yml --ref main -f tag=v0.22.21
|
|
948
|
+
|
|
949
|
+
# Trigger an automatic version bump on demand
|
|
950
|
+
gh workflow run version-bump.yml --ref main
|
|
951
|
+
|
|
952
|
+
# Re-run the most recent failed CI run
|
|
953
|
+
gh run rerun --failed --repo bamr87/zer0-mistakes
|
|
954
|
+
|
|
955
|
+
# Watch a workflow run live
|
|
956
|
+
gh run watch --repo bamr87/zer0-mistakes
|
|
957
|
+
```
|
|
958
|
+
|
|
959
|
+
### Forking these workflows
|
|
960
|
+
|
|
961
|
+
When you fork the theme as a starter, the workflows come with you. To make them safe and useful in your fork:
|
|
962
|
+
|
|
963
|
+
1. **Add `RUBYGEMS_API_KEY`** in `Settings → Secrets and variables → Actions` if you plan to publish your own gem; otherwise disable [`release.yml`](.github/workflows/release.yml).
|
|
964
|
+
2. **Tune triggers** in [`update-dependencies.yml`](.github/workflows/update-dependencies.yml) (default: weekly).
|
|
965
|
+
3. **Disable** [`setup-template.yml`](.github/workflows/setup-template.yml) after the first run — it's a one-shot bootstrap.
|
|
966
|
+
4. **GitHub Pages** is auto-enabled when you push to `main` if your repo is `<username>.github.io`.
|
|
967
|
+
|
|
968
|
+
> 📸 Screenshots above are real runs captured from [github.com/bamr87/zer0-mistakes/actions](https://github.com/bamr87/zer0-mistakes/actions). Re-capture them for your fork by running `./scripts/test/capture-workflow-screenshots.sh` (or just take fresh screenshots) and replacing the files in [`docs/images/workflows/`](docs/images/workflows/).
|
|
969
|
+
|
|
970
|
+
---
|
|
971
|
+
|
|
709
972
|
## 🗺 Roadmap
|
|
710
973
|
|
|
711
974
|
The diagram and table below are auto-generated from [`_data/roadmap.yml`](_data/roadmap.yml) by [`scripts/generate-roadmap.sh`](scripts/generate-roadmap.sh). See the full [Roadmap page](/roadmap/) for per-version detail and the [PRD](docs/PRD.md) for product context.
|
|
@@ -803,7 +1066,7 @@ git push origin feature/awesome-feature
|
|
|
803
1066
|
|
|
804
1067
|
| Metric | Value |
|
|
805
1068
|
|--------|-------|
|
|
806
|
-
| **Current Version** | 0.22.
|
|
1069
|
+
| **Current Version** | 0.22.22 ([RubyGems](https://rubygems.org/gems/jekyll-theme-zer0), [CHANGELOG](/CHANGELOG)) |
|
|
807
1070
|
| **Documented Features** | 43 ([Feature Registry](https://github.com/bamr87/zer0-mistakes/blob/main/_data/features.yml)) |
|
|
808
1071
|
| **Setup Time** | 2-5 minutes ([install.sh benchmarks](https://github.com/bamr87/zer0-mistakes/blob/main/install.sh)) |
|
|
809
1072
|
| **Documentation Pages** | 70+ ([browse docs](/pages/)) |
|
|
@@ -835,17 +1098,25 @@ All AIEO enhancements are backward-compatible, follow existing code style (Boots
|
|
|
835
1098
|
|
|
836
1099
|
Built with these amazing technologies:
|
|
837
1100
|
|
|
838
|
-
- [Jekyll](https://jekyllrb.com/)
|
|
839
|
-
- [Bootstrap](https://getbootstrap.com/)
|
|
840
|
-
- [Docker](https://docker.com/)
|
|
841
|
-
- [PostHog](https://posthog.com/)
|
|
842
|
-
- [Mermaid](https://mermaid.js.org/)
|
|
843
|
-
|
|
1101
|
+
- [Jekyll](https://jekyllrb.com/) — Static site generation
|
|
1102
|
+
- [Bootstrap](https://getbootstrap.com/) — UI framework
|
|
1103
|
+
- [Docker](https://docker.com/) — Containerization
|
|
1104
|
+
- [PostHog](https://posthog.com/) — Privacy-first analytics
|
|
1105
|
+
- [Mermaid](https://mermaid.js.org/) — Diagram rendering
|
|
1106
|
+
|
|
1107
|
+
And these AI partners that make zer0-mistakes truly AI-native:
|
|
1108
|
+
|
|
1109
|
+
- [GitHub Copilot](https://github.com/features/copilot) — Project-wide instructions & file-scoped guidance
|
|
1110
|
+
- [OpenAI Codex](https://openai.com/codex) — Cross-tool agent integration via `AGENTS.md`
|
|
1111
|
+
- [Cursor](https://cursor.com/) — Slash-command workflows in `.cursor/commands/`
|
|
1112
|
+
- [Claude Code](https://www.claude.com/product/claude-code) — Anthropic agent compatibility
|
|
1113
|
+
- [Aider](https://aider.chat/), [Continue](https://continue.dev/), [Jules](https://jules.google/) — Additional [agents.md](https://agents.md/)-aware tools
|
|
1114
|
+
- [OpenAI Images API](https://platform.openai.com/docs/guides/images) — AI-generated preview images
|
|
844
1115
|
|
|
845
1116
|
---
|
|
846
1117
|
|
|
847
|
-
**Built with ❤️ for the Jekyll community**
|
|
1118
|
+
**Built with ❤️ — and a little help from our AI partners — for the Jekyll community**
|
|
848
1119
|
|
|
849
|
-
**v0.22.
|
|
1120
|
+
**v0.22.22** • [Changelog](CHANGELOG.md) • [License](LICENSE) • [Contributing](CONTRIBUTING.md) • [AI Agent Guide](AGENTS.md)
|
|
850
1121
|
|
|
851
1122
|
|