← Back to Blog

The Evolution of My Portfolios: 5 Distinct Builds Explored

A comprehensive deep-dive into 5 different portfolio systems I've built so far—spanning terminal CLIs, artistic scrapbooks, mobile app showcases, and a zero-framework Linux engineering site. Live previews, architectural decisions, and key learnings included.

Suraj Yadav
Suraj Yadav Software Engineer · CALIN Global Services India
14 MIN READ · 5 BUILDS EXPLORED · TECHNICAL RETROSPECTIVE

1. The Philosophy of Building Portfolios

Every software engineer's portfolio is a timestamp of their current engineering standards, design taste, and technical focus. Over the past several years, I haven't just iterated on a single site—I've built 5 completely distinct portfolio systems, each tailored to a specific audience, platform, or aesthetic vision.

From an interactive terminal command-line interface for Linux hackers to a hand-drawn creative scrapbook portfolio and our flagship zero-framework Linux engineering portal, here is the complete breakdown of every portfolio I have designed and shipped.

2. Portfolio v4 (Current Engineering Flagship)

Active Production · 2025–2026
https://suraj-yadav0.github.io/portfolio-v4/
Visit Live Site ↗
NATIVE LINUX & FLUTTER ENGINEERING

Suraj Yadav · Portfolio v4

Zero-framework Vanilla ES6+ site featuring Ubuntu Orange accent (#E95420), Lenis smooth scrolling, GSAP ScrollTrigger sticky stack, real-time 53-week GitHub heatmap, and verified achievement trophies.

Vanilla JS GSAP 3 Lenis Live GitHub API PWA Ready

Design & Architectural Highlights:

  • Zero Framework Overhead: No React/Vue/Tailwind build steps. Raw semantic HTML5, modular CSS3 variables, and vanilla JavaScript for 100/100 Lighthouse performance.
  • Lenis + GSAP Motion Physics: Fluid inertial scrolling with a 5-card sticky flagship stack (Quantro, utgpt, Time Management, WishGift, clockApp) and horizontal pan gallery.
  • Universal Word-by-Word Scroll Illumination: Text starts dimmed at opacity: 0.16 and illuminates as the reader scrolls down, functioning as an ambient eye guide.
  • Interactive 53-Week GitHub Heatmap: Real-time SVG calendar with daily commit tooltips, all-time totals (4,506+ contributions), and multi-year filter tabs.
main.js · Word-by-Word Scroll Scrub Illumination
JavaScript
function scrubTokenize(el) {
  var walker = document.createTreeWalker(el, NodeFilter.SHOW_TEXT, null, false);
  var textNodes = [], node;
  while ((node = walker.nextNode())) {
    if (node.nodeValue.trim()) textNodes.push(node);
  }
  textNodes.forEach(function (tNode) {
    var words = tNode.nodeValue.trim().split(/\s+/);
    var group = document.createElement("span");
    group.className = "w-group";
    words.forEach(function (w, i) {
      var span = document.createElement("span");
      span.className = "w";
      span.textContent = w;
      group.appendChild(span);
      if (i < words.length - 1) group.appendChild(document.createTextNode(" "));
    });
    tNode.parentNode.replaceChild(group, tNode);
  });
}

3. Terminal Portfolio (Interactive CLI Simulator)

Interactive Shell · Web CLI
https://suraj-yadav0.github.io/terminal-portfolio/
Visit Live Site ↗
suraj@ubuntu:~$ whoami
Suraj Yadav — Native Linux & Mobile Software Engineer
suraj@ubuntu:~$ cat skills.txt
Qt/QML, Python, Flutter, C++, Lomiri, Linux Kernel Tooling
Vite React Terminal Emulator CLI Parser

Design & Architectural Highlights:

  • Keyboard-First Experience: Built for terminal lovers and Linux developers who prefer typing commands over scrolling.
  • Custom Command Parser: Supports commands like help, whoami, projects, skills, sudo, clear, history, and interactive easter eggs.
  • Tab-Autocompletion & History: Features bash-like Tab autocompletion and / command history navigation.
commands.js · Interactive Shell Command Dispatcher
JavaScript
const COMMANDS = {
  whoami: () => "Suraj Yadav — Native Linux & Mobile Software Engineer",
  skills: () => "Qt/QML, Python, Flutter, C++, Lomiri, Linux Kernel Tooling",
  projects: () => "utgpt (On-device AI), Quantro (Finance), clockApp (GNOME)",
  sudo: () => "Permission denied: user 'suraj' is not in the sudoers file.",
  clear: () => null
};

function handleCommand(cmd, stdout) {
  const [name, ...args] = cmd.trim().toLowerCase().split(/\s+/);
  if (name in COMMANDS) {
    const res = COMMANDS[name](args);
    if (res !== null) stdout.push({ type: "output", text: res });
  } else {
    stdout.push({ type: "error", text: `command not found: ${name}. Try 'help'.` });
  }
}

4. Sanskriti Portfolio (Editorial Scrapbook & Stories)

Creative Case Study · Storybook UI
https://sanskriti-portfolio-two.vercel.app/
Visit Live Site ↗
STORIES, MOUNTAINS & MAGGI

Sanskriti Verma · Scrapbook Portfolio

An artisanal storytelling portfolio designed with warm paper grain, hand-drawn vector doodle libraries (butterflies, pine trees, mountain lines), and creative scrapbook polaroids.

Creative UI SVG Doodle Library Paper Grain Aesthetic Storytelling

Design & Architectural Highlights:

  • Anti-Corporate Aesthetic: Moves completely away from standard tech grids in favor of an organic, hand-crafted paper journal feeling.
  • Inline SVG Symbol Library: 40+ custom vector doodle symbols (butterflies, sunrays, notebook tape, polaroid frames) injected with zero HTTP overhead.
  • Typography & Warm Color Palette: Warm cream, terracotta, and ochre color tokens paired with expressive editorial typography.
scrapbook.css · Warm Paper Grain & Dynamic Polaroid Tilt
CSS3
/* Warm paper grain filter applied to article backdrop */
.scrapbook-container {
  background-color: #FAF6EF;
  background-image: radial-gradient(#E6DFD3 1px, transparent 1px);
  background-size: 16px 16px;
}

/* Hand-drawn SVG doodle rotation & paper tape accent */
.polaroid-frame {
  transform: rotate(calc(var(--tilt, 0) * 1deg));
  box-shadow: 0 10px 24px rgba(110, 80, 50, 0.14);
  border: 12px solid #FFFFFF;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

5. Portfolio v3 (The Ubuntu Touch & Lomiri Era)

2024 · Linux Touch Convergence
https://suraj-yadav0.github.io/portfolio-v3/
Visit Live Site ↗
UBUNTU TOUCH & OPENSTORE ECOSYSTEM

Suraj Yadav · Portfolio v3

Single-page React application that cemented my identity as a native Linux phone and Lomiri developer, featuring OpenStore listing badges, Dekko 2 upstream contributions, and NotAtMrp internship impact.

React SPA QML Showcase OpenStore NotAtMrp Metrics

Design & Architectural Highlights:

  • Niche Platform Focus: Documented native builds for Ubuntu Touch (WhatsWeb, Money Manager UT, clockApp).
  • Upstream Open Source Badges: Showcased 5 merged merge requests to Ubuntu Touch's convergent Dekko 2 email client.
  • Quantitative Work Metrics: Highlighted a 70% decrease in wait time and 30% speed improvement during my Flutter development internship.
Main.qml · Lomiri Convergent Header Layout
QML / Lomiri
import QtQuick 2.9
import Lomiri.Components 1.3

Page {
  id: projectShowcasePage
  header: PageHeader {
    title: i18n.tr("Suraj Yadav · Projects")
    trailingActionBar.actions: [
      Action {
        iconName: "external-link"
        text: i18n.tr("OpenStore")
        onTriggered: Qt.openUrlExternally("https://open-store.io/app/ubtms")
      }
    ]
  }
}

6. Second Portfolio (v2) (Interactive Web & DSA Streak)

2023 · Problem Solving & Core Web
https://suraj-yadav-second-portfolio.vercel.app/
Visit Live Site ↗
DATA STRUCTURES & FOUNDATIONS

Suraj Yadav · Second Portfolio

Modern responsive web portfolio showcasing 500+ LeetCode DSA solutions, multi-stage experience timeline, and early cross-platform Flutter experiments with clean light/dark modes.

Semantic HTML CSS Grid LeetCode DSA Theme Engine

Design & Architectural Highlights:

  • Clean Navigation & Sectioning: Fixed header navigation with smooth scrolling between About, Experience, Projects, and Contact.
  • DSA Track Proof: Structured problem-solving stats demonstrating algorithmic discipline.
  • The Foundation for Future Versions: Established the structured bento patterns and typography foundations that evolved into Portfolio v4.
grid.css · Bento Grid & Theme Variable Engine
CSS3
:root {
  --bg-main: #0E1013;
  --text-primary: #F0F2F5;
  --accent-line: #E95420;
}

[data-theme="light"] {
  --bg-main: #FFFFFF;
  --text-primary: #0E1013;
  --accent-line: #D84315;
}

.portfolio-v2-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
}

7. Comparative Analysis Matrix

A technical side-by-side comparison across all 5 portfolio systems:

Portfolio Build Stack Primary Theme Unique Highlight Live Link
Portfolio v4 Vanilla ES6+, GSAP, Lenis Dark Engineering (Ubuntu Orange) Sticky Deck, 53-Week HeatMap, 9 Trophies Live Site ↗
Terminal Portfolio Vite, React, Web CLI Monospace Retro Shell Interactive bash parser, tab-completion Live Site ↗
Sanskriti Portfolio Semantic HTML, CSS Doodles Warm Paper & Scrapbook Hand-drawn vector doodle library Live Site ↗
Portfolio v3 React SPA, Modular CSS Mobile Linux Touch OpenStore apps & Dekko 2 MRs Live Site ↗
Second Portfolio (v2) HTML5, CSS Grid, Vanilla JS Clean Dual Theme 500+ LeetCode DSA track & Experience Live Site ↗

8. 5 Key Takeaways from Building 5 Portfolios

01

Tailor the Medium to the Message

A terminal interface is perfect for low-level systems hackers; a scrapbook is perfect for a creative storyteller; a zero-framework GSAP site is perfect for demonstrating frontend craftsmanship.

02

Zero-Framework Architecture is Underestimated

You don't need a heavy React or Next.js bundle to create fluid 60FPS animations. Vanilla ES6+ with Lenis and GSAP loads in milliseconds and scores 100/100 across every metric.

03

Show Real Telemetry, Not Abstract Claims

Instead of claiming "expert in Git", embed a live 53-week interactive contribution calendar and verified achievement trophies that prove continuous shipping.

04

Strict Design Rules Create Strong Identities

Enforcing constraints—like our strict radius-0 rule and Ubuntu Orange (#E95420) locked accent—instantly makes a portfolio recognizable and unforgettable.

05

Keep Building & Reinventing

Your portfolio should never remain static. Treat every redesign as a technical playground to master new layout techniques, scroll physics, and interaction models.