{
  "app": "Huezon Colour Library",
  "noEnv": true,
  "version": "0.6.0-beta.1",
  "release": "BETA 0.6.0 Community, Cards and React-Ready UI Polish",
  "admin": "Protected write endpoints use staff username/password sessions. The legacy X-Admin-Key path remains for emergency local maintenance only.",
  "security": [
    "free public workspace accounts",
    "staff username/password sessions",
    "PBKDF2 password hashes",
    "profile lockouts",
    "permission-aware staff routes",
    "strict static path checks",
    "safe HTML error pages",
    "rate limiting",
    "security headers",
    "constant-time admin key checks",
    "same-origin write guard"
  ],
  "endpoints": [
    "GET /api/health",
    "GET /api/status",
    "GET /api/audit",
    "GET /api/performance",
    "GET /api/meta",
    "GET /api/stats",
    "GET /api/facets",
    "GET /api/trending?limit=8",
    "GET /api/color-of-day",
    "GET /api/insights",
    "GET /api/collections?limit=5",
    "GET /api/colors?q=deep-blue&family=blue&tag=dark&source=Huezon&sort=name&page=1&limit=32",
    "GET /api/colors/:idOrSlug",
    "GET /api/colors/:idOrSlug/similar?limit=8",
    "GET /api/colors/:idOrSlug/matches?type=similar|soft|accent|background|text|contrast|opposite&limit=8",
    "GET /api/colors/:idOrSlug/contrast?background=%23000000",
    "POST /api/colors/:idOrSlug/view",
    "POST /api/colors/:idOrSlug/save",
    "GET /api/me/saved",
    "POST /api/convert",
    "POST /api/palettes/suggest",
    "POST /api/palettes/share",
    "GET /api/palettes/:slug",
    "GET /api/palettes/from?hex=%232B163F&type=analogous|complementary|triadic|split|monochrome|warm|cool|calm|contrast|brand|neon|gaming|minimal",
    "GET /api/export?format=json|csv",
    "POST /api/colors  [admin]",
    "PATCH /api/colors/:idOrSlug  [admin]",
    "DELETE /api/colors/:idOrSlug  [admin]",
    "POST /api/import  [admin]",
    "POST /api/backups  [admin]",
    "GET /api/backups  [admin]",
    "GET /api/backups/:name  [admin download]",
    "GET /api/backups/:name/compare  [admin]",
    "POST /api/backups/:name/restore  [admin]",
    "DELETE /api/backups/:name  [admin]",
    "POST /api/admin/login  [staff username/password]",
    "POST /api/admin/logout",
    "GET /api/admin/session",
    "GET /api/admin/dashboard  [staff]",
    "GET /api/admin/dashboard/:section  [staff modular dashboard data]",
    "GET /api/admin/profile  [staff]",
    "PATCH /api/admin/profile  [staff]",
    "POST /api/admin/profile/password  [staff]",
    "GET /api/admin/badges  [staff]",
    "GET /api/admin/staff  [staff]",
    "POST /api/admin/staff  [owner/admin]",
    "PATCH /api/admin/staff/:id  [owner/admin]",
    "GET /api/admin/health-report  [staff]",
    "GET /api/admin/activity  [staff]",
    "GET /api/user/session",
    "POST /api/user/register",
    "POST /api/user/login",
    "POST /api/user/logout",
    "GET /api/user/profile",
    "PATCH /api/user/profile",
    "GET /api/user/workspace",
    "POST /api/user/activity",
    "GET /api/search-index?limit=500",
    "GET /api/community",
    "GET /api/events/stream"
  ]
}