Skip to content

Conversation

@whitep4nth3r
Copy link
Contributor

@whitep4nth3r whitep4nth3r commented Feb 6, 2026

Merge this on 3rd March.

Things to do

Missing a11y tests for 6 component(s):

  • AuthorAvatar.vue
  • AuthorList.vue
  • BlogPostListCard.vue
  • BlogPostWrapper.vue
  • BlueskyComment.vue
  • BlueskyComments.vue

To do before merging

  • delete test posts!

Kai-ros and others added 26 commits January 30, 2026 13:44
I think nuxt prepare will try to compile standard-site-sync and since the
lexicon types don't exist yet it will fail. We should generate the types
first, and then run prepare.
Also add some breathing room to the top of the blog post
This is a WIP. It only runs once on the client when you refresh the page.
- Combined keyboard shortcuts (settings, compare, blog navigation)
- Merged package.json dependencies (kept main versions, added blog dependencies)
- Added presetTypography and presetRtl to uno config
Co-authored-by: Dominik K. <[email protected]>
Co-authored-by: Luke Warlow <[email protected]>
Co-authored-by: Victoria <[email protected]>
Co-authored-by: Yevhen Husak <[email protected]>
Co-authored-by: Yevhen Husak <[email protected]>
Co-authored-by: Daniel Roe <[email protected]>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Jialong Lu <[email protected]>
Co-authored-by: Alexander Schmid <[email protected]>
Co-authored-by: James Garbutt <[email protected]>
Co-authored-by: Vincent Taverna <[email protected]>
Co-authored-by: Philippe Serhal <[email protected]>
Co-authored-by: Garth de Wet <[email protected]>
Co-authored-by: Alex Savelyev <[email protected]>
Co-authored-by: Marcus Blättermann <[email protected]>
Co-authored-by: Wojciech Maj <[email protected]>
Co-authored-by: Chase Naples <[email protected]>
Co-authored-by: Felix Schneider <[email protected]>
Co-authored-by: btea <[email protected]>
Co-authored-by: Santosh Yadav <[email protected]>
Co-authored-by: Vida Xie <[email protected]>
Co-authored-by: Okinea Dev <[email protected]>
Co-authored-by: Maher <[email protected]>
Co-authored-by: Nandkishor Jadoun <[email protected]>
Co-authored-by: abeer0 <[email protected]>
Co-authored-by: Alec Lloyd Probert <[email protected]>
Co-authored-by: Stephen Zhou <[email protected]>
Co-authored-by: Matteo Gabriele <[email protected]>
Co-authored-by: Mihkel Eidast <[email protected]>
Co-authored-by: Craig Hart <[email protected]>
Co-authored-by: Houssam Elbadissi <[email protected]>
Co-authored-by: Cassidy Williams <[email protected]>
Co-authored-by: Cassidy Williams <[email protected]>
Co-authored-by: Salma Alam-Naylor <[email protected]>
Co-authored-by: Bailey Townsend <[email protected]>
Co-authored-by: Denys <[email protected]>
Co-authored-by: SHAMIL <[email protected]>
Co-authored-by: Jiří Michel <[email protected]>
Co-authored-by: Lars Kappert <[email protected]>
Co-authored-by: Jonathan Yeong <[email protected]>
Co-authored-by: penjj <[email protected]>
Co-authored-by: Nicolas DUBIEN <[email protected]>
Co-authored-by: Chris <[email protected]>
Co-authored-by: Josh King <[email protected]>
Co-authored-by: Jens Rømer Hesselbjerg <[email protected]>
Co-authored-by: Nathan Knowler <[email protected]>
Co-authored-by: Stanyslas Bres <[email protected]>
Co-authored-by: Trivikram Kamat <[email protected]>
Co-authored-by: copilot-swe-agent[bot] <[email protected]>
Co-authored-by: Bobbie Goede <[email protected]>
Co-authored-by: Joaquín Sánchez <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: TAKAHASHI Shuuji <[email protected]>
Co-authored-by: Tierney Cyren <[email protected]>
Co-authored-by: NullVoxPopuli <[email protected]>
Co-authored-by: Abderrahmen Mhemed <[email protected]>
Co-authored-by: abderrahmen.mhemed <[email protected]>
Co-authored-by: Julien Déramond <[email protected]>
Co-authored-by: Roman <[email protected]>
Co-authored-by: shamilkotta <[email protected]>
Co-authored-by: rygrit <[email protected]>
Co-authored-by: Vrajpal Jhala <[email protected]>
Co-authored-by: Lars Kappert <[email protected]>
Co-authored-by: Jaydip Sanghani <[email protected]>
Co-authored-by: wr <[email protected]>
Co-authored-by: wr <[email protected]>
Co-authored-by: Emanuele Orfanelli <[email protected]>
Co-authored-by: Robin <[email protected]>
Co-authored-by: rzzf <[email protected]>
Co-authored-by: Florian Heuberger <[email protected]>
Co-authored-by: Mikołaj Misztal <[email protected]>
Co-authored-by: Nico <[email protected]>
Co-authored-by: Benjamín Vicente <[email protected]>
Co-authored-by: Nico Kempe <[email protected]>
Co-authored-by: SerKo <[email protected]>
Co-authored-by: Scott Wu <[email protected]>
Co-authored-by: Pascal Küsgen <[email protected]>
Co-authored-by: Luke Warlow <[email protected]>
Co-authored-by: Idris Gadi <[email protected]>
@vercel
Copy link

vercel bot commented Feb 6, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
npmx.dev Ready Ready Preview, Comment Feb 11, 2026 1:00pm
npmx.dev-vercel Ready Ready Preview, Comment Feb 11, 2026 1:00pm
2 Skipped Deployments
Project Deployment Actions Updated (UTC)
docs.npmx.dev Ignored Ignored Preview Feb 11, 2026 1:00pm
npmx-lunaria Ignored Ignored Feb 11, 2026 1:00pm

Request Review

@github-actions
Copy link

github-actions bot commented Feb 6, 2026

Lunaria Status Overview

🌕 This pull request will trigger status changes.

Learn more

By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.

You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

File Note
lunaria/files/en-GB.json Localization changed, will be marked as complete. 🔄️
lunaria/files/en-US.json Source changed, localizations will be marked as outdated.
lunaria/files/fr-FR.json Localization changed, will be marked as complete. 🔄️
Warnings reference
Icon Description
🔄️ The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.

Copy link
Contributor

@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

🧹 Nitpick comments (3)
server/api/atproto/bluesky-oembed.get.ts (2)

24-24: Consider defensive handling for regex match despite schema validation.

The non-null assertion and type cast rely on the schema having validated the URL format beforehand. Whilst this is mathematically sound per the comment, the coding guidelines recommend always checking array access by index. A defensive approach would guard against future refactoring that might break this assumption.

🛡️ Optional defensive approach
-      const [, handle, postId] = url.match(BLUESKY_URL_EXTRACT_REGEX)! as [string, string, string]
+      const match = url.match(BLUESKY_URL_EXTRACT_REGEX)
+      if (!match || !match[1] || !match[2]) {
+        throw createError({ statusCode: 400, message: ERROR_BLUESKY_URL_FAILED })
+      }
+      const [, handle, postId] = match

As per coding guidelines: "ensure you always check when accessing an array value by index".


27-32: Consider adding a timeout for the external API call.

The $fetch call to Bluesky's public API could hang if their service is slow or unresponsive. Adding an explicit timeout would improve resilience.

⏱️ Optional timeout configuration
       const { did } = await $fetch<{ did: string }>(
         `${BLUESKY_API}com.atproto.identity.resolveHandle`,
         {
           query: { handle },
+          timeout: 5000,
         },
       )
nuxt.config.ts (1)

93-108: Confirm a one‑year cache is acceptable for registry endpoints.
isr: true plus cache.maxAge of one year could serve stale docs/provenance/files if upstream data changes. If freshness matters, consider a shorter TTL or an explicit isr expiration.

@whitep4nth3r
Copy link
Contributor Author

@jonathanyeong just merged main into this branch, another nightmare

the author avatars are no longer showing on the blog article now and I cannot work out why 😓

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.