nano.metitiereLet's Talk

Case Study

Checkpoint News - AI-Automated Gaming News Site

nextjstypescripttailwindpostgresqldrizzlevercel-blobcronseoai-automationmcp

Project

Checkpoint News

Role

I built Checkpoint News end to end as a solo project: a gaming news site where content is researched, written, and published automatically every day by an AI agent, with a human-in-the-loop safety net instead of a manual editorial pipeline.

  • Designed and built the full Next.js site (App Router, TypeScript) with a bold, IGN-style dark UI: full-bleed hero for the top story, category navigation, and a responsive mobile drawer menu.
  • Built a scheduled Cursor Automation that uses an MCP web-search tool (Exa) to find real gaming news, write original 4-paragraph summaries with proper attribution, classify them into one of 7 categories, and flag unconfirmed rumors.
  • Designed a protected ingestion API with strict validation (Zod), multi-signal duplicate detection (normalized URL, title hash, content hash), and automatic image sourcing (provided image → source page's Open Graph image → YouTube thumbnail → category placeholder).
  • Implemented an auto-publish workflow with email notifications (EmailJS) on every new article, including HMAC-signed one-click links to pull an article down without needing to log into an admin panel.
  • Added YouTube video embeds for trailer/reveal coverage, and a Vercel Cron job that safely prunes rejected drafts and old audit logs without ever touching published content.

Tech

  • Live website: https://checkpoint-news.vercel.app/
  • Next.js (App Router) + TypeScript + Tailwind CSS for the site and API routes.
  • Drizzle ORM over Vercel Postgres (Neon) for articles and an ingest audit log.
  • Vercel Blob for re-hosting cover images so the site never depends on third-party image hosts staying online.
  • Cursor Automation + MCP (Exa) as the AI research/content-generation pipeline, calling a signed ingestion endpoint on a daily schedule.
  • EmailJS for transactional notifications, with HMAC-signed tokens for one-click moderation actions.
  • Full SEO layer: robots.txt, dynamic sitemap.xml, Open Graph/Twitter metadata, and NewsArticle JSON-LD structured data per article.
  • Vercel Cron for scheduled cleanup of rejected drafts and stale logs, and Google Analytics 4 for traffic insight.

Impact

  • Removed the manual work of researching, writing, and publishing daily news by letting an AI agent handle the full editorial loop, with automated notifications as a safety net.
  • Prevented duplicate or low-quality content from reaching the site through layered validation and hashing before anything is published.
  • Ensured every article always has a real cover image via a cascading fallback strategy, instead of relying on the automation to always provide one.
  • Kept the database and storage costs bounded over time with a scheduled cleanup job, without ever risking published content or SEO value.