August 9, 2026

Building This Portfolio: A Pixel Terminal in Next.js

nextjsdesignportfolioweb

This site started with a simple goal: a portfolio that feels like the work it represents — terminal-first, deliberate, and a little playful.

The concept

Most engineering portfolios are generic Bootstrap cards. I wanted something that said "I build developer tools and AI systems" before reading a single line.

So the design language became:

  • VT323 — the pixel font that gives everything a CRT terminal feel
  • ASCII art — a robot in the hero that blinks and winks on a loop (respecting prefers-reduced-motion, of course)
  • Terminal affordances$ prompts, ~/ paths, monospace labels, a blinking cursor

The whole thing runs on Next.js App Router with Tailwind CSS v4, and it's fully bilingual (EN/ES) with a language switch that persists via URL param and cookie.

The details that mattered

A few choices worth mentioning:

  1. Reveal animations use IntersectionObserver — they never run if the user prefers reduced motion.
  2. Spotlight cards track the cursor with requestAnimationFrame and CSS variables — no re-renders, just paint.
  3. Language switching is server-rendered — the page is a React Server Component, so the HTML arrives with the right language baked in (good for SEO and first paint), and only the interactive islands are client components.

What's next

This very blog is the latest addition. The roadmap I'm playing with:

  • Open Graph image per post
  • A proper sitemap with post entries
  • More writing on RAG evaluation and cloud cost governance

If you're building your own portfolio, my advice: pick one strong concept and commit to it. A terminal theme executed consistently beats a generic template with ten animations.

Building This Portfolio: A Pixel Terminal in Next.js · Sebastian Garcia