Package Validator Architecture

Package Validator Architecture An architecture diagram generated by Archify. Browser · Svelte 5 SPA · Architecture component Browser Svelte 5 SPA SQLite · subscriptions · docker compose · api-data volume SQLite subscriptions api-data volume Caddy · ui container :80 · docker compose Caddy ui container :80 Static bundle · Vite build · docker compose Static bundle Vite build NestJS API · api container :3288 · docker compose · rate limited NestJS API api container :3288 rate limited Dependency checker · dist-tags + semver · docker compose Dependency checker dist-tags + semver Report mailer · hourly schedule · docker compose Report mailer hourly schedule GitHub GraphQL · repo + package.json · Architecture component GitHub GraphQL repo + package.json npm registry · latest versions · Architecture component npm registry latest versions SendGrid · email delivery · Architecture component SendGrid email delivery HTTP :8080 SPA files /v1/* subscriptions GraphQL package.json versions due reports HTTPS docker compose

Edge

  • • Caddy serves the SPA and proxies /v1/* to the API
  • • Same origin, so no CORS configuration

API

  • • Per-IP rate limits; package.json is checked in memory
  • • Subscriptions in SQLite; an hourly job emails due reports

External services

  • • GitHub token required
  • • SendGrid optional; nothing is emailed without a key