From bc1fe0b72bc4503a64cfb523b59f90ddfc8afec7 Mon Sep 17 00:00:00 2001 From: Adrian Bonpin Date: Mon, 25 May 2026 19:43:58 +0800 Subject: [PATCH] chore: bump version to 2026.2.1, add changelog entry for SEO improvements (Task 13) --- CHANGELOG.md | 22 ++++++++++++++++++++++ content/updates/2026-05-25-v2026.2.1.md | 22 ++++++++++++++++++++++ package.json | 2 +- 3 files changed, 45 insertions(+), 1 deletion(-) create mode 100644 content/updates/2026-05-25-v2026.2.1.md diff --git a/CHANGELOG.md b/CHANGELOG.md index 5a060e8..df6bf07 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,28 @@ All notable changes to DeckyVault will be documented in this file. +## [2026.2.1] - 2026-05-25 + +### Fixed +- **Page title duplication on /games and /devices:** titles now read "Games | DeckyVault" and "Devices | DeckyVault" instead of the duplicated "Games — DeckyVault | DeckyVault" +- **Missing metadata on /compare and /profile:** these pages now have unique `` and `<meta description>` tags instead of reusing the homepage title +- **Duplicate H1 on game detail pages:** each game page now has a single `<h1>` heading +- **Truncated meta descriptions on game pages:** descriptions no longer cut off mid-sentence — truncation now respects word boundaries + +### Added +- **Canonical URL tag** on homepage — prevents duplicate-content indexing +- **BreadcrumbList structured data** on game detail, games listing, and devices listing pages — enables breadcrumb rich results in search +- **Organization structured data** on homepage — enhances brand visibility in search results +- **AggregateRating structured data** on game detail pages — enables star ratings in SERPs when Steam review scores are available +- **Preconnect hints** for external CDN origins (Steam, SteamGridDB, Cloudflare R2, Discord, Google) — improves page load performance + +### Changed +- Removed `user-scalable=no` from viewport meta tag — improves mobile accessibility compliance (WCAG 1.4.4) + +### Technical +- Added `lib/utils/seo.ts` with shared `smartTruncate()` and `buildBreadcrumbList()` utilities +- Added `app/__tests__/metadata.test.ts` integration test suite for page-level SEO metadata + ## [2026.2.0] - 2026-05-20 ### Added diff --git a/content/updates/2026-05-25-v2026.2.1.md b/content/updates/2026-05-25-v2026.2.1.md new file mode 100644 index 0000000..a6b0869 --- /dev/null +++ b/content/updates/2026-05-25-v2026.2.1.md @@ -0,0 +1,22 @@ +--- +title: "SEO Improvements — Better Titles, Rich Results & Performance Hints" +date: "2026-05-25" +version: "2026.2.1" +summary: "Fixed duplicate page titles across the site, added structured data (breadcrumbs, ratings, organization) for rich search results, improved meta descriptions, and added preconnect hints for faster image loading." +--- + +### Page Title Cleanup + +The `/games` and `/devices` pages no longer show the brand name twice in search results. Titles now read `"Games | DeckyVault"` and `"Devices | DeckyVault"` instead of the old `"Games — DeckyVault | DeckyVault"`. The `/compare` and `/profile` pages also have unique titles now instead of reusing the homepage title. + +### Rich Search Results + +Game detail pages now include **BreadcrumbList** and **AggregateRating** structured data, enabling breadcrumb trails and star ratings in Google search results. The homepage includes **Organization** schema for brand visibility. + +### Better Meta Descriptions + +Game page descriptions no longer cut off mid-sentence — the new smart truncation respects word boundaries for cleaner search result snippets. + +### Faster Image Loading + +Preconnect hints for Steam, SteamGridDB, Discord, Google, and Cloudflare R2 CDNs reduce connection setup time when loading game cover images. \ No newline at end of file diff --git a/package.json b/package.json index cc92df4..ab6d513 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "deckyvault", - "version": "2026.2.0", + "version": "2026.2.1", "private": true, "scripts": { "dev": "next dev --experimental-https --webpack",