Skip to content

Add MDX blog system and first post - #7

Closed
oosuhada wants to merge 12 commits into
codex/fix-askoosu-architecture-routingfrom
codex/blog-mdx-system
Closed

oosuhada wants to merge 12 commits into
codex/fix-askoosu-architecture-routingfrom
codex/blog-mdx-system

Conversation

@oosuhada

@oosuhada oosuhada commented May 13, 2026

Copy link
Copy Markdown
Owner

Goal

Add a file-based /blog system to oosu.dev and publish the first technical post about automating Hanseong TFX173T monitor brightness with m1ddc, Swift, and LaunchAgent. Also tighten Cloudflare-facing production behavior found during dashboard review.

Current status

  • Adds /blog, /blog/[slug], and /blog/feed.xml routes.
  • Adds MDX frontmatter parsing, published-post filtering, static params, related-post lookup, SEO metadata, JSON-LD, sitemap inclusion, and RSS output.
  • Adds code-block syntax highlighting with filename captions and copy buttons.
  • Adds the first published MDX post at content/blog/m1ddc-monitor-brightness.mdx.
  • Updates Docker runtime copy so content/ exists in the standalone image.
  • Enables Cloudflare Always Use HTTPS for oosu.dev from the dashboard.
  • Adds /favicon.ico handling so browser/default favicon requests no longer return 404.
  • Adds cache headers for public AI docs, favicons, and tracked static image asset folders.

Changed files

  • src/app/blog/**
  • src/lib/blog.ts
  • src/components/blog/**
  • content/blog/m1ddc-monitor-brightness.mdx
  • src/app/sitemap.ts
  • src/lib/seo.ts
  • src/app/globals.css
  • Dockerfile
  • package.json, pnpm-lock.yaml
  • src/app/favicon.ico/route.ts
  • src/app/layout.tsx
  • next.config.ts

Validation commands run

  • pnpm exec tsc --noEmit passed during earlier blog work.
  • Changed-file ESLint passed during earlier blog work.
  • /opt/homebrew/bin/corepack pnpm build passed locally after Cloudflare/favicon changes.
  • Local HTTP checks passed for /favicon.ico, /favicon.svg, /llms.txt, tracked static images, and /blog.
  • Mac mini Docker Compose rebuild completed with /opt/homebrew/bin/docker compose -f ops/orbstack/compose.prod.yml up -d --build app.
  • Server checks passed for http://127.0.0.1:3010/favicon.ico and http://127.0.0.1:3010/blog.
  • Live checks passed for http://oosu.dev redirecting to HTTPS, https://oosu.dev/favicon.ico, https://oosu.dev/favicon.svg, https://oosu.dev/blog, https://oosu.dev/llms.txt, and tracked image asset cache headers.

Notes

  • Full next lint is still blocked by existing unrelated React Hooks lint findings in chat/sidebar/UI files. The changed blog files passed targeted ESLint during the blog work.
  • Cloudflare Security Analytics showed no recent firewall/security events during the dashboard review; the favicon 404 was an actual small site-side missing route.

@oosuhada
oosuhada force-pushed the codex/blog-mdx-system branch from 64f8aa5 to 5c80fe4 Compare May 19, 2026 08:38
@oosuhada
oosuhada force-pushed the codex/blog-mdx-system branch from 81a2dbe to 056b7d3 Compare August 28, 2026 08:34
@oosuhada
oosuhada force-pushed the codex/fix-askoosu-architecture-routing branch from 406b6ae to 001355b Compare August 28, 2026 08:34
@oosuhada

oosuhada commented Sep 9, 2026

Copy link
Copy Markdown
Owner Author

Closing this stale branch-to-branch PR because it has no CI signal and the main-facing AskOosu engineering evidence work is tracked separately in #9 with green checks. Branch is left intact for reference.

@oosuhada oosuhada closed this Sep 9, 2026
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