Skip to content

fix(blog): show a window of page links instead of every page - #3

Merged
fleizean merged 1 commit into
developfrom
fix/blog-pagination-window
Oct 19, 2026
Merged

fleizean merged 1 commit into
developfrom
fix/blog-pagination-window

Conversation

@fleizean

Copy link
Copy Markdown
Member

Summary

The blog list now shows a window of page links (‹ 1 … 6 7 8 … 13 ›) instead of one link per page.

Why

The pagination rendered a link for every page. With 13 pages it already fills a row, and it grows without limit as AutoPilot publishes more posts.

Changes

  • blog-list.ts: pageWindow returns the first page, the last page, the current page with one neighbour on each side, and a gap marker where pages are skipped. A gap that would hide a single page shows that page instead.
  • blog-list.html: renders the gaps as …, and adds previous and next links (rel="prev" / rel="next", with aria-labels) so every page stays reachable by crawlers and keyboard users.
  • Page URLs (/blog?page=N) are unchanged.

Notes for reviewers

None.

Checklist

  • The pull request targets develop and is about one thing
  • Commit messages follow Conventional Commits (feat(scope): ..., fix(scope): ...)
  • CI is green (backend tests, frontend build and tests, dependency gate)
  • Schema changes are EF Core migrations generated by the tool, not hand-edited
  • A changed backend DTO has its TypeScript twin updated in src/frontend/src/app/core/models
  • New dependencies are justified and their lock files are updated in the same commit
  • No secrets, tokens or personal data in code, logs or this description
  • Code comments are kept to a minimum; the reasoning lives in this description

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@fleizean
fleizean merged commit c6bf655 into develop Oct 19, 2026
5 checks passed
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