prime8dev

prime8dev
git clone https://git.prime8.dev/prime8dev.git
Log | Files | Refs | README | LICENSE

commit 1d06ab0749a439e09877028235a84e8b512c1ea8
parent 40f185e29994b6311cc048a15e8f9ebc805fe68d
Author: Damian Myrda <damian@prime8.dev>
Date:   Sun,  8 Feb 2026 14:11:03 -0600

fix(seo): update site URL to www.prime8.dev and fix sitemap bugs

- Change SITE_DOMAIN from prime8.dev to www.prime8.dev
- Import SITE_URL in sitemap.xml.ts to fix undefined URL variable
- Import SITE_URL in blog/[slug].astro instead of hardcoded URL
- Convert astro.config.mjs to astro.config.ts and import SITE_URL
- Add trailingSlash: 'never' config to prevent duplicate content

Diffstat:
Dastro.config.mjs | 16----------------
Aastro.config.ts | 18++++++++++++++++++
Msrc/constants/website.ts | 2+-
Msrc/pages/blog/[slug].astro | 3++-
Msrc/pages/sitemap.xml.ts | 3++-
5 files changed, 23 insertions(+), 19 deletions(-)

diff --git a/astro.config.mjs b/astro.config.mjs @@ -1,16 +0,0 @@ -import { defineConfig } from "astro/config"; -import bun from "astro-bun-adapter"; - -export default defineConfig({ - output: "server", - site: "https://prime8.dev", - adapter: bun(), - server: { - host: true, - }, - image: { - service: { - entrypoint: "astro/assets/services/noop", - }, - }, -}); diff --git a/astro.config.ts b/astro.config.ts @@ -0,0 +1,18 @@ +import { defineConfig } from "astro/config"; +import bun from "astro-bun-adapter"; +import { SITE_URL } from "./src/constants/website"; + +export default defineConfig({ + output: "server", + site: SITE_URL, + trailingSlash: "never", + adapter: bun(), + server: { + host: true, + }, + image: { + service: { + entrypoint: "astro/assets/services/noop", + }, + }, +}); diff --git a/src/constants/website.ts b/src/constants/website.ts @@ -1,3 +1,3 @@ -export const SITE_DOMAIN = "prime8.dev"; +export const SITE_DOMAIN = "www.prime8.dev"; export const SITE_URL = `https://${SITE_DOMAIN}`; diff --git a/src/pages/blog/[slug].astro b/src/pages/blog/[slug].astro @@ -4,6 +4,7 @@ import Article from "../../layouts/components/Article.astro"; import { blogs } from "../../blogs"; import schemas from "../../schemas/index"; +import { SITE_URL } from "../../constants/website"; const blog = blogs.find((blog) => blog.id === Astro.params.slug); if (!blog) { @@ -22,7 +23,7 @@ const { getSchemaForBlog, getBreadcrumbSchema } = schemas.blog; title={`${blog.title} | Damian Myrda`} description={blog.description} type="article" - url={`https://prime8.dev/blog/${blog.id}`} + url={`${SITE_URL}/blog/${blog.id}`} publishedTime={blog.date} modifiedTime={blog.modifiedDate || blog.date} keywords={keywords} diff --git a/src/pages/sitemap.xml.ts b/src/pages/sitemap.xml.ts @@ -2,6 +2,7 @@ import type { APIRoute } from "astro"; import { fetchGitMetadataForProject } from "../external/git"; import { experience, projects } from "../config"; import { blogs } from "../blogs"; +import { SITE_URL } from "../constants/website"; export const GET: APIRoute = async () => { const now = new Date().toISOString().split("T")[0]; @@ -58,7 +59,7 @@ export const GET: APIRoute = async () => { ${allPages .map( (page) => ` <url> - <loc>${URL}${page.url}</loc> + <loc>${SITE_URL}${page.url}</loc> <lastmod>${page.lastmod || now}</lastmod> <changefreq>${page.changefreq}</changefreq> <priority>${page.priority}</priority>