Skip to main content

Automations & Deployments

Transparency page — how the platform builds, enriches, and syncs data automatically.

Deploy Pipeline

Builds the Astro static site and deploys to Cloudflare Pages on every push or CMS change.

Trigger
Push to main or CMS repository_dispatch
Target
safeskills-web.pages.dev
Steps
Checkout → pnpm install → Astro build → Pages deploy
CMS Hook
triggerRebuild fires on skill vet/update/unpublish
Workflow
.github/workflows/deploy.yml

GitHub Enrichment Cron

Fetches repo metadata — stars, forks, language, topics, contributors, last commit — from the GitHub API and writes it to the CMS.

Schedule
Every 6 hours (0 */6 * * *) + manual dispatch
Deduplication
Skills sharing a monorepo → 1 API call per repo
Script
infra/scripts/fetch-github-stats.mjs
Workflow
.github/workflows/github-stats.yml

Mirror Sync

Syncs vetted skills to the public registry repo after each successful deploy.

Trigger
Runs after Deploy workflow completes successfully
Script
infra/scripts/mirror-sync.mjs
Workflow
.github/workflows/mirror-sync.yml

Infrastructure

Cloudflare Pages

Static frontend hosting

Cloudflare D1

SQLite database (CMS + ratings)

Cloudflare R2

Media / asset storage

Payload CMS

Content management (Next.js 15)