{"openapi":"3.1.0","info":{"title":"Ramon Logan Jr.: Public API","version":"1.0.0","description":"A small, read-only API over this site's own content. Every field returned here is sourced from the same typed, Zod-validated content modules the website itself renders from; there is no second copy of this data anywhere.","contact":{"email":"hello@ramonloganjr.com","url":"https://ramonloganjr.com"}},"servers":[{"url":"https://ramonloganjr.com"}],"paths":{"/api/v1/projects":{"get":{"summary":"List projects","description":"All projects, sorted live-first then by curated order. List view omits `body` (case-study copy) to keep the payload small.","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectListResponse"}}}},"429":{"description":"Rate limited"}}}},"/api/v1/projects/{slug}":{"get":{"summary":"Get a project by slug","description":"Full record, including `body` and per-metric `methodology` when present.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"},"example":"abakada-toolkit"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectResponse"}}}},"404":{"description":"No project found for that slug"},"429":{"description":"Rate limited"}}}},"/api/v1/resume":{"get":{"summary":"Get the resume","description":"Profile, experience, education, certifications, and stack: the same content the printable /resume page renders from.","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResumeResponse"}}}},"429":{"description":"Rate limited"}}}}},"components":{"schemas":{"Meta":{"type":"object","properties":{"commit":{"type":["string","null"],"description":"The git commit SHA this response was built from (Vercel deployments only)."}}},"ProjectListResponse":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object"}},"meta":{"$ref":"#/components/schemas/Meta"}}},"ProjectResponse":{"type":"object","properties":{"data":{"type":"object"},"meta":{"$ref":"#/components/schemas/Meta"}}},"ResumeResponse":{"type":"object","properties":{"data":{"type":"object"},"meta":{"$ref":"#/components/schemas/Meta"}}}}}}