Commit graph

13 commits

Author SHA1 Message Date
Samuel Berthe
d38511d7cb
chore: generate pagefind index at build time, not committed to git
- Add pagefind run step to build script in site/package.json
- Add site/public/pagefind/ to .gitignore (generated at deploy time)
2026-04-14 20:33:29 +02:00
Samuel Berthe
a56d8cf2a4
feat: refine star toast — brand orange, idle trigger, 15s auto-hide
- Style: brand orange background with white text (visible on any bg)
- Trigger: every 5 copies OR after 10 minutes of inactivity on page
- Auto-hide: 15s (reset if toast re-triggers before expiry)
- Idle timer resets on each copy
2026-04-14 20:30:08 +02:00
Samuel Berthe
25418c5db2
feat: add star nudge toast after every 5 rule copies
Show a dismissible toast (bottom-right, 20s auto-hide) nudging users
to star the GitHub repo. Fires every 5 copies via a sessionStorage
counter. CopyButton dispatches a copy-success custom event; StarToast
listens for it and manages display logic.
2026-04-14 20:09:30 +02:00
Samuel Berthe
5366d4b9ae
fix: replace invalid top-level return with isFresh flag in star scripts
Top-level return is a syntax error in ES modules. Replace the early
return pattern with an isFresh boolean guard. Also revert the hero
"Star on GitHub" button change.
2026-04-14 19:59:36 +02:00
Samuel Berthe
1f8bcca779
feat: add GitHub stars to StatsBar and fix cache early-return
Add a 4th stat ( GitHub stars) to StatsBar with build-time fallback
and live client-side fetch. Both Header and StatsBar share the same
sessionStorage cache key and skip the API call when the cache is fresh
(1h TTL), reducing fetches to at most one per session.
2026-04-14 19:51:12 +02:00
Samuel Berthe
954999dfa9
feat: replace GitHub icon with Star button and live star count
Replace the plain GitHub icon+count in the header with a proper two-zone
star button (★ Star | 8.4k). The count is seeded at build time from the
GitHub API and refreshed client-side on page load with a 1-hour
sessionStorage cache.
2026-04-14 19:47:49 +02:00
Samuel Berthe
ab87fdcf30
feat/dual license (#550)
* ci: remove node version pin in site build workflow

* docs: clarify dual license (CC BY 4.0 for content, MIT for site code)

Alert rules and content (_data/rules.yml, dist/) are licensed under
Creative Commons CC BY 4.0. The site source code (site/) is licensed
under MIT. Both are now documented in LICENSE, site/LICENSE, the footer,
and the FAQ.
2026-04-10 21:36:57 +02:00
Samuel Berthe
aa7d93ce95
chore: migrate assets/ to site/public/images/ (#549)
Remove legacy assets/ directory (pre-Astro era). Images were already
duplicated under site/public/images/; update README sponsor URLs to
point to the new location.
2026-04-10 21:28:38 +02:00
dependabot[bot]
d31b3f9ba0
build(deps): bump @iconify-json/lucide from 1.2.101 to 1.2.102 in /site (#545)
Bumps [@iconify-json/lucide](https://github.com/iconify/icon-sets) from 1.2.101 to 1.2.102.
- [Commits](https://github.com/iconify/icon-sets/commits)

---
updated-dependencies:
- dependency-name: "@iconify-json/lucide"
  dependency-version: 1.2.102
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-10 21:19:49 +02:00
Samuel Berthe
89d8423d93
build(deps): migrate from @astrojs/tailwind to @tailwindcss/vite for Tailwind v4 (#547)
@astrojs/tailwind v6 still requires tailwindcss@^3; replace it with the
official @tailwindcss/vite Vite plugin. Update global.css to v4 syntax
(@import "tailwindcss", @custom-variant dark, @theme tokens) and drop
the now-unused tailwind.config.mjs.
2026-04-10 21:18:13 +02:00
dependabot[bot]
814dd5d3fb
build(deps): bump @astrojs/tailwind from 5.1.5 to 6.0.2 in /site (#543)
Bumps [@astrojs/tailwind](https://github.com/withastro/astro/tree/HEAD/packages/integrations/tailwind) from 5.1.5 to 6.0.2.
- [Release notes](https://github.com/withastro/astro/releases)
- [Changelog](https://github.com/withastro/astro/blob/main/packages/integrations/tailwind/CHANGELOG.md)
- [Commits](https://github.com/withastro/astro/commits/@astrojs/tailwind@6.0.2/packages/integrations/tailwind)

---
updated-dependencies:
- dependency-name: "@astrojs/tailwind"
  dependency-version: 6.0.2
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-10 21:11:05 +02:00
dependabot[bot]
e6ea45aec1
build(deps): bump tailwindcss from 3.4.19 to 4.2.2 in /site (#544)
Bumps [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) from 3.4.19 to 4.2.2.
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/commits/v4.2.2/packages/tailwindcss)

---
updated-dependencies:
- dependency-name: tailwindcss
  dependency-version: 4.2.2
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-10 21:10:56 +02:00
Samuel Berthe
79afa21610
feat/astro migration (#538)
* feat: migrate website from Jekyll to Astro

Rebuilds the site using Astro (SSG) with Tailwind CSS v4, replacing the
Jekyll/Cayman theme. Key changes:

- Splits the monolithic /rules page into 110 statically-generated pages
  (92 per-service + 13 group index + homepage + guide pages) for SEO
- URL structure: /rules/[group-slug]/[service-slug]/ with backward-
  compatibility redirect map for old anchor-based URLs (/rules#redis)
- Modern UI: Prometheus-orange accent, dark mode (system + toggle),
  sticky sidebar, responsive layout, copy-to-clipboard per rule/section
- SEO: per-page <title>, <meta description>, Open Graph, Twitter Card,
  canonical URLs, sitemap.xml via @astrojs/sitemap
- GEO: FAQPage JSON-LD schema on each service page (rules as Q&A pairs
  for AI search engines), TechArticle schema, BreadcrumbList
- Search: Pagefind (build-time index, lazy-loaded, ~200KB)
- Zero JS by default; copy buttons and theme toggle use inline scripts
- New CI: .github/workflows/deploy.yml builds Astro + Pagefind and
  deploys to GitHub Pages via actions/deploy-pages
- Existing dist.yml and test.yml workflows are untouched
- _data/rules.yml remains the single source of truth

Note: GitHub Pages source must be changed from "Build from branch"
(Jekyll) to "GitHub Actions" in repository settings.

* doc: new website based on astro

* refactor: remove previous website

* chore: add npm dependabot for Astro site + scope CI to _data changes

* Update site/astro.config.mjs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update site/src/components/CopyButton.astro

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* oops

* fix: strip trailing slash from BASE_URL to prevent double slashes in URLs

Agent-Logs-Url: https://github.com/samber/awesome-prometheus-alerts/sessions/c85937ba-1855-4b8a-a72b-847eab1c8639

Co-authored-by: samber <2951285+samber@users.noreply.github.com>

* fix: resolve Astro build errors in astro.config.mjs

- Remove assetsInclude yml which caused Vite to treat YAML files as static assets instead of running them through the custom YAML transform plugin; data.groups was undefined at runtime because the import resolved to a URL rather than parsed content
- Deduplicate old-path redirects: emit only the slash-less variant per service to avoid Astro router collision warnings (trailing-slash variant is handled automatically)

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: samber <2951285+samber@users.noreply.github.com>
2026-04-10 21:08:06 +02:00