Personal Portfolio

A high-performance, bilingual personal website built with Next.js 16, featuring a secure custom admin panel for content management, dynamic Open Graph image generation, and a type-safe database architecture.

TypeScript
Frontend
Next.js
Tailwind CSS
i18n
Backend
Drizzle ORM
Postgres
Auth.js
CI/CD
DevOps

Overview

This project represents the very platform you are viewing right now. It is a modern, high-performance personal portfolio designed to showcase projects and thoughts with speed and precision. Built on Next.js 16 (App Router), it features a fully custom Content Management System (CMS), allowing for dynamic updates without code changes.

Key Features

  • Bilingual Architecture (i18n): Native support for English and Turkish via next-intlayer, ensuring fully localized content and URL slugs.
  • Custom Admin Panel: A secure, password-protected dashboard utilizing Auth.js (NextAuth v5) that allows for creating, updating, and deleting projects and blog posts.
  • Type-Safe Database: Leverages Vercel Postgres with Drizzle ORM, providing a robust and type-safe backend for managing data.
  • Dynamic OG Images: Automatically generates Open Graph images for social media sharing using vercel/og, ensuring every link looks professional when shared.
  • Modern UI/UX: Styled with Tailwind CSS v4 and shadcn/ui, featuring automatic dark/light mode switching and fluid animations.

Tech Stack

  • Framework: Next.js 16 (App Router)
  • Language: TypeScript
  • Database & ORM: Vercel Postgres, Drizzle ORM
  • Authentication: Auth.js (NextAuth v5)
  • Styling: Tailwind CSS, Radix UI, Framer Motion
  • Services: Vercel Blob (Storage), Resend (Email)