Add articles page like reference site #152

Closed
opened 2026-06-19 18:49:13 -05:00 by erik · 3 comments
Owner

Goal

Add a public Slugkit articles page modeled after the articles page in ~/Private/code/github/evcraddock/erikcraddock.me/.

Requirements

  • Use the erikcraddock.me articles route as the reference, especially src/routes/pages.tsx.
  • Add a public /articles route to Slugkit.
  • List only published posts where type = article; exclude notes and links.
  • Present articles as cards or summaries consistent with the reference site's articles page while using Slugkit's templates, CSS, and data model.
  • Support pagination or a clear “more articles” pattern if practical with existing utilities.
  • Preserve existing public routes and RSS/feed behavior.
  • Add or update tests for the route and article filtering behavior where practical.

Acceptance criteria

  • GET /articles renders a public articles page.
  • The page lists published articles and excludes notes and links.
  • The page follows the reference site's articles page pattern while matching Slugkit conventions.
  • Existing public routes such as /, /posts/:slug, /tags, and /feed.xml still work.
  • Relevant tests and local checks pass.

Dependencies

  • None
## Goal Add a public Slugkit articles page modeled after the articles page in `~/Private/code/github/evcraddock/erikcraddock.me/`. ## Requirements - Use the `erikcraddock.me` articles route as the reference, especially `src/routes/pages.tsx`. - Add a public `/articles` route to Slugkit. - List only published posts where `type = article`; exclude notes and links. - Present articles as cards or summaries consistent with the reference site's articles page while using Slugkit's templates, CSS, and data model. - Support pagination or a clear “more articles” pattern if practical with existing utilities. - Preserve existing public routes and RSS/feed behavior. - Add or update tests for the route and article filtering behavior where practical. ## Acceptance criteria - [ ] `GET /articles` renders a public articles page. - [ ] The page lists published articles and excludes notes and links. - [ ] The page follows the reference site's articles page pattern while matching Slugkit conventions. - [ ] Existing public routes such as `/`, `/posts/:slug`, `/tags`, and `/feed.xml` still work. - [ ] Relevant tests and local checks pass. ## Dependencies - None
Author
Owner

Synced from todu comment by @todu on 2026-06-20T03:26:06.065Z

Update

  • Started implementation on branch feat/task-2356da49-articles-page.
  • Plan: add /articles modeled on the reference articles page, list only published articles, add pagination/tests, and preserve existing feed/RSS/public routes.
_Synced from todu comment by @todu on 2026-06-20T03:26:06.065Z_ ### Update - Started implementation on branch `feat/task-2356da49-articles-page`. - Plan: add `/articles` modeled on the reference articles page, list only published articles, add pagination/tests, and preserve existing feed/RSS/public routes.
erik 2026-06-19 22:34:17 -05:00
Author
Owner

Synced from todu comment by @todu on 2026-06-20T03:32:57.153Z

Closing summary

All acceptance criteria are met.

  • GET /articles renders a public articles page modeled on the erikcraddock.me articles route.
  • The page lists only published article posts and excludes notes, links, and drafts, covered by route tests.
  • The page follows the reference article-card pattern while using Slugkit templates, Tailwind CSS, metadata, tags, preview images, excerpts, and pagination conventions.
  • Existing public routes and RSS/feed behavior were preserved; full pre-PR suite passed.
  • Verification passed: npm run build --workspace @slugkit/template-site, targeted public route tests, ./scripts/pre-pr.sh, browser smoke testing for /articles, and Forgejo Actions run #222.

PR #160 was merged into main after explicit human approval.

_Synced from todu comment by @todu on 2026-06-20T03:32:57.153Z_ ### Closing summary All acceptance criteria are met. - `GET /articles` renders a public articles page modeled on the `erikcraddock.me` articles route. - The page lists only published article posts and excludes notes, links, and drafts, covered by route tests. - The page follows the reference article-card pattern while using Slugkit templates, Tailwind CSS, metadata, tags, preview images, excerpts, and pagination conventions. - Existing public routes and RSS/feed behavior were preserved; full pre-PR suite passed. - Verification passed: `npm run build --workspace @slugkit/template-site`, targeted public route tests, `./scripts/pre-pr.sh`, browser smoke testing for `/articles`, and Forgejo Actions run #222. PR #160 was merged into `main` after explicit human approval.
Author
Owner

Synced from todu comment by @todu on 2026-06-20T03:29:28.919Z

Review update

  • PR: #160 is open and reviewed.
  • Result: approved; no blocking issues or warnings.
  • Verified: npm run build --workspace @slugkit/template-site, targeted public route test, ./scripts/pre-pr.sh, browser smoke testing for /articles, and Forgejo Actions run #222.
  • Acceptance: 5/5 criteria met.
  • Follow-up: waiting for explicit human merge approval.
_Synced from todu comment by @todu on 2026-06-20T03:29:28.919Z_ ### Review update - PR: https://forge.caradoc.com/erik/slugkit/pulls/160 is open and reviewed. - Result: approved; no blocking issues or warnings. - Verified: `npm run build --workspace @slugkit/template-site`, targeted public route test, `./scripts/pre-pr.sh`, browser smoke testing for `/articles`, and Forgejo Actions run #222. - Acceptance: 5/5 criteria met. - Follow-up: waiting for explicit human merge approval.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
erik/slugkit#152
No description provided.