
Personal Portfolio Platform
Full-Stack Developer Portfolio & Technical Blog
A full-stack portfolio and technical blog built with Next.js 16 and React 19, featuring a Supabase-backed CMS, Google-authenticated engagement (likes and comments), a protected admin dashboard for content and moderation, and unit-tested core logic—designed for SEO, theme-aware UX, and resume/PDF export.
Project Stats
Screenshots

Key Contributions
Architected and delivered a full-stack portfolio and blog with Next.js 16 (App Router) and React 19, delivering a responsive, mobile-first site with light/dark theme, SEO metadata, and structured data (JSON-LD), improving discoverability and user experience
Designed and implemented a Supabase-backed blog: Postgres (blogs, blog_likes, blog_comments), Storage for images, and a rich editor (Tiptap) with code blocks (highlight.js), cover images, tags, read time, and view tracking; enabled full content lifecycle via a protected admin dashboard with image upload
Integrated Google OAuth (Supabase Auth) for engagement: implemented likes (one per user per post) and comments (one per user per post with 500-character limit and live count), with avatar/name display and edit/delete for own comments, driving authenticated interaction while keeping moderation in admin
Built a protected admin dashboard (Google-only access, rate-limited APIs) for blog CRUD, comment moderation (approve/hide/delete), and per-post "who liked" list; centralized constants and config (API paths, messages, env) for maintainability and consistent behavior across client and server
Implemented unit tests (Jest, React Testing Library, next/jest) for core logic (blogData, constants), key components (ToastContext, PageFooter), and pages (Home, License, Privacy, Terms, Not Found); added mocks for Next.js, Framer Motion, and fetch, enabling reliable CI and regression safety
Delivered policy pages (Privacy, Terms, License), resume PDF generation (@react-pdf/renderer), and documentation for Google Auth, production Supabase SQL, and testing—enabling transparent, repeatable deployment and onboarding