Skip to content

docs: add blog and announcements section#46

Merged
parse merged 4 commits intomainfrom
feat/blog
Mar 7, 2026
Merged

docs: add blog and announcements section#46
parse merged 4 commits intomainfrom
feat/blog

Conversation

@parse
Copy link
Contributor

@parse parse commented Mar 7, 2026

Summary

  • Add starlight-blog plugin with blog and announcements sections
  • Publish inaugural "Introducing Erode" blog post
  • Publish 0.6.0 release announcement
  • Add Blog link to the navigation bar

Summary by CodeRabbit

  • New Features
    • Added a site-level blog integration and a Blog/Announcements link in the main navigation; header layout adjusted for the new item.
  • Documentation
    • Published inaugural blog post introducing Erode, setup, CLI usage, and roadmap.
    • Added an announcement outlining Erode v0.6.0 features (local drift detection, local checks, CLI usage, integrations).
  • Refactor
    • Documentation pipeline reworked to surface blog content alongside existing docs.
  • Chores
    • Added blog runtime dependency.

Add a blog section to the documentation site using the starlight-blog
plugin. Includes the first post ("Introducing Erode") and a Blog link
in the navigation bar.
@coderabbitai
Copy link

coderabbitai bot commented Mar 7, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: dfacad52-8425-41a1-b7aa-ff963cb68a40

📥 Commits

Reviewing files that changed from the base of the PR and between b9e5268 and c62a2f3.

📒 Files selected for processing (1)
  • packages/web/src/components/nav-bar.astro

📝 Walkthrough

Walkthrough

Adds the starlight-blog dependency and config to Astro, extends the docs content collection with a loader and integrated blog schema, updates the site nav and styles, and introduces two new content pages (a blog post and an announcement).

Changes

Cohort / File(s) Summary
Astro config & dependency
packages/web/astro.config.mjs, packages/web/package.json
Added starlight-blog dependency and registered a starlightBlog plugin entry inside the existing Starlight plugin configuration (includes metadata: title, postCount, recentPostCount, authors).
Content schema & loader
packages/web/src/content.config.ts
Refactored the docs collection to use docsLoader() and extended docsSchema via extend: (context) => blogSchema(context), integrating blog schema into the docs pipeline.
Navigation & styles
packages/web/src/components/nav-bar.astro
Added an Announcements nav item linking to /announcements/, adjusted .nav-inner flex layout (removed space-between, added gap), and added margin-inline-start: auto to push the GitHub link.
New content
packages/web/src/content/docs/blog/introducing-erode.md, packages/web/src/content/docs/announcements/erode-0.6.0.md
Added a new blog post "Introducing Erode" and a release announcement for Erode v0.6.0 (frontmatter and full markdown content).

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~40 minutes

Poem

🐇 I hopped through configs, a new plugin to bring,

Starlight blogs twinkle and nav links now sing,
Announcements and posts tucked safe in a tree,
I nudged schemas and docs—happy as can be,
Tiny paws, big changes, a celebratory spring. ✨

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Title check ⚠️ Warning The PR title 'docs: add blog and announcements section' is somewhat misleading as the primary change is adding the starlight-blog plugin and blog functionality, not documentation updates; however, it does capture a real aspect of the changes (blog and announcements content). Consider revising the title to 'feat(web): add starlight-blog plugin with blog posts' to better reflect the main technical change and align with the actual PR objectives and description.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feat/blog

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@packages/web/src/components/nav-bar.astro`:
- Line 5: The new top-level <a class="nav-link">Blog</a> breaks the .nav-inner
spacing because .nav-inner uses justify-content: space-between; fix by grouping
primary links into a left-side wrapper so only the GitHub icon is pushed to the
edge: wrap the Docs and Blog links in a container (e.g., class="primary-links"
or "nav-left") inside nav-bar.astro, leave the GitHub/icon link as the separate
right-side child, and ensure CSS sets .primary-links (or .nav-left) to
display:flex with desired gap so .nav-inner can keep justify-content:
space-between without separating Docs and Blog.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 69be3673-6ec2-4cc9-937b-818ebee37456

📥 Commits

Reviewing files that changed from the base of the PR and between 5dd8c76 and 92a52c6.

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (5)
  • packages/web/astro.config.mjs
  • packages/web/package.json
  • packages/web/src/components/nav-bar.astro
  • packages/web/src/content.config.ts
  • packages/web/src/content/docs/blog/introducing-erode.md

<div class="container nav-inner">
<a href="/" class="wordmark">erode</a>
<a href="/docs/getting-started/" class="nav-link">Docs</a>
<a href="/blog/" class="nav-link">Blog</a>
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Adding another top-level nav item breaks the current spacing model.

.nav-inner still uses justify-content: space-between, so Line 5 turns Docs and Blog into separate flex stops across the full navbar. Keep the primary links grouped and push only the GitHub icon to the edge.

🧭 Minimal layout fix
  .nav-inner {
    display: flex;
-   justify-content: space-between;
    align-items: center;
+   gap: var(--space-md);
    padding-block: var(--space-md);
  }

  .github-link {
+   margin-inline-start: auto;
    color: var(--text-tertiary);
    transition: color 0.2s;
    display: flex;
  }
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@packages/web/src/components/nav-bar.astro` at line 5, The new top-level <a
class="nav-link">Blog</a> breaks the .nav-inner spacing because .nav-inner uses
justify-content: space-between; fix by grouping primary links into a left-side
wrapper so only the GitHub icon is pushed to the edge: wrap the Docs and Blog
links in a container (e.g., class="primary-links" or "nav-left") inside
nav-bar.astro, leave the GitHub/icon link as the separate right-side child, and
ensure CSS sets .primary-links (or .nav-left) to display:flex with desired gap
so .nav-inner can keep justify-content: space-between without separating Docs
and Blog.

parse and others added 2 commits March 7, 2026 14:14
Rewrite intro to be more direct. Update title and excerpt to match.
@parse parse changed the title feat(web): add blog with starlight-blog plugin Add blog and announcements section Mar 7, 2026
@parse parse changed the title Add blog and announcements section docs: add blog and announcements section Mar 7, 2026
Replace justify-content: space-between with gap on .nav-inner and add
margin-inline-start: auto on .github-link so the wordmark and nav links
group on the left while the GitHub icon stays right-aligned.
@parse parse merged commit da91d0f into main Mar 7, 2026
8 of 9 checks passed
@parse parse deleted the feat/blog branch March 7, 2026 18:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant