Back to projects

Shubham's Portfolio

The personal portfolio you're looking at right now. Built from scratch with the App Router, Framer Motion, and Tailwind to showcase projects with rich, scrollable timelines and an automated daily blog pipeline.

Built With

Next.jsTypeScriptFramer MotionTailwind CSSVercel

Project Timeline

Initial Concept

Mar 2024

Decided to build from scratch rather than reach for a template. Researched modern portfolio designs for inspiration and locked in the feature set.

Design System Creation

Apr 2024

Established the visual identity: dark-mode-first, gradient accents, Geist font family, and smooth Framer Motion animations throughout.

V1 Static Build

May 2024

Built the initial static version with hero, about, and a basic project listing. Deployed to Vercel for early feedback.

Blog Integration

Jul 2024

Added a blog section with Markdown-based content, syntax highlighting for code blocks, and category-based filtering.

Project Detail Pages

Aug 2024

Created dynamic /projects/[slug] pages with individual timelines, tech stack badges, and GitHub + live site links.

Animation Polish

Sep 2024

Added scroll-triggered animations, page transitions, and interactive hover effects. Tuned timing for a premium feel.

Dynamic Project Loading

Nov 2024

Refactored to load projects from a centralised data file. Built the responsive card grid with gradient text headers.

Custom Domain & SEO

Dec 2024

Connected shubhamsingla.tech, added proper meta tags, Open Graph images, and canonical URLs.

V2 Major Upgrade

Jan 2025

Integrated dynamic project loading, timeline views, GitHub repository links, and live site buttons. Full compliance audit against engineering standards.

Daily Blog Automation

Apr 2026

Added a scheduled pipeline that generates a fresh cybersecurity blog post each day via Gemini with a Groq fallback, committing the result through GitHub Actions.

Project Curation

May 2026

Pruned retired projects, expanded descriptions and tech stacks for the active set, and tightened unused imports across the components.