feat: add page authors from frontmatter - #171
Conversation
Pages can declare who wrote them with an `authors` list of plain strings, each either `Name <email>` or a bare name. A lone string is accepted for the single-author case. Authors render as an avatar-and-name byline in both themes, as Person entries in the page's Article structured data, and as a line on the generated social card in server and static builds alike. Avatars are drawn from the author's initials, so nothing is fetched over the network. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Warning Review limit reached
Next review available in: 25 minutes Limit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits within each organization. For paid Pro and Pro+ reviews, CodeRabbit uses a developer's included PR review attempts over the past 7 days to set the current hourly allowance. At typical activity levels, the full plan allowance applies. Higher sustained activity can lower the allowance until earlier attempts leave the 7-day window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (17)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Pages can now say who wrote them.
Each entry is a plain string —
Name <email>or a bare name. A lone string works for the single-author case (authors: Jane Doe). Anything that isn't a recognizableName <email>is treated as a literal name, so an occasional contributor can add a byline without any config.Where authors show up
mailto:when an email is given.authorPerson entries in the Article JSON-LD.By …line on the generated OG image, in both the server route and static builds.Avatars come from the author's initials via Apsara's
Avatarfallback — no image is fetched, so this works offline and in air-gapped builds. Rendering real profile pictures would need a place to declare them (an authors registry inchronicle.yaml); this PR deliberately keeps everything in frontmatter.Testing
bun test— 290 pass, 0 fail (14 new for the parser: shorthand, bare name, whitespace, non-email angle brackets, email-only, empty, lone string, non-string entries, initials)chronicle buildplus bothscripts/smoke-test.shruns (15-page crawl each), and--preset staticauthorarray, theauthorsOG param on the meta tag, and the OG PNG itself in both the server route and a static buildNote
tsc --noEmitgains one error —Cannot find module 'bun:test'on the new test file, matching every existing test file (repo-wide tsconfig gap, not introduced here).🤖 Generated with Claude Code