Next.jsDesignPersonalCase Study

How I Built My Portfolio: Design, Tech, and Lessons Learned

A behind-the-scenes look at the process, technology stack, and design decisions that shaped my personal portfolio site. Includes tips for developers and designers looking to stand out.

How I Built My Portfolio: Design, Tech, and Lessons Learned

Building a personal portfolio is one of those projects that seems simple on the surface but quickly becomes a deep dive into design philosophy, technical decisions, and personal branding. After months of iteration and refinement, I'm excited to share the story behind my portfolio site.

The Challenge

As a developer who works across the full stack—from Shopify Plus customizations to complex web applications—I needed a site that could showcase both my technical depth and design sensibility. The portfolio had to serve multiple audiences: potential clients looking for Shopify expertise, businesses needing custom web applications, and fellow developers interested in my approach to problem-solving.

Design Philosophy

I wanted to move away from the typical developer portfolio clichés. Instead of dark themes with neon accents, I opted for a sophisticated royal blue and gold color scheme that conveys professionalism while maintaining warmth and approachability.

Key Design Principles

  • Professional yet approachable: The color palette and typography create authority without intimidation
  • Performance-first: Every animation and component is optimized for speed
  • Content hierarchy: Clear visual flow guides visitors through my story and work
  • Responsive excellence: Looks and works perfectly on any device

Technology Stack

I chose Next.js 15 as the foundation for several reasons:

Frontend

  • Next.js 15 with App Router for modern React patterns
  • TypeScript for type safety and better developer experience
  • Tailwind CSS for rapid, consistent styling
  • Framer Motion for smooth, purposeful animations
  • Lucide React for consistent, scalable icons

Content Management

  • MDX for blog posts and case studies
  • Custom content pipeline for type-safe content handling
  • Gray-matter for frontmatter parsing

Deployment & Performance

  • Vercel for seamless deployment and edge optimization
  • Image optimization with Next.js built-in features
  • SEO optimization with custom metadata generation

Unique Features

Floating Elements Component

One of my favorite additions is the FloatingElements component that adds subtle animated background elements throughout the site. It's configurable, performance-optimized, and adds just the right amount of visual interest without being distracting.

Skills Grid with Progress Bars

Rather than a simple list, I created an interactive skills visualization that shows proficiency levels across eight categories, from Web2 fundamentals to advanced AI/automation and Web3 technologies.

Animated Timeline

The process section on the services page uses a custom vertical timeline with step circles, icons, and connecting elements that guide visitors through my collaborative approach.

Performance Optimizations

Performance was non-negotiable. Here's what I implemented:

  • Image optimization for all visual assets
  • Component lazy loading for above-the-fold content prioritization
  • Tailwind CSS purging to minimize bundle size
  • Font optimization with Next.js font loading strategies
  • SEO metadata generation for all pages

Lessons Learned

1. Iteration is Everything

My first design was completely different. Through multiple iterations, I discovered that restraint often creates more impact than complexity.

2. Performance Matters More Than Features

Every cool animation or component had to justify its performance cost. Some beautiful ideas got cut because they didn't meet my speed standards.

3. Content Strategy is Design

The structure of my content directly influenced the site architecture. Starting with content strategy would have saved time in the design phase.

4. Accessibility from Day One

Building with accessibility in mind from the start is much easier than retrofitting it later. Semantic HTML, proper contrast ratios, and keyboard navigation were priorities throughout.

What's Next

The portfolio is never truly "done." My roadmap includes:

  • Blog expansion with more technical deep-dives
  • Case study details with interactive demos
  • Performance dashboard to track real user metrics
  • Dark mode refinements based on user feedback

For Fellow Developers

If you're building your own portfolio, here are my top recommendations:

  1. Start with content strategy before diving into design
  2. Choose technologies you're excited to showcase
  3. Optimize for your target audience (clients vs. employers vs. peers)
  4. Make it uniquely yours - avoid template thinking
  5. Measure everything - performance, conversions, user behavior

Conclusion

Building this portfolio was as much about self-discovery as it was about web development. It forced me to articulate my value proposition, refine my design instincts, and push my technical boundaries.

The result is a site I'm genuinely proud of—one that represents not just my skills, but my approach to solving complex problems with elegant solutions.


Interested in how I built a specific feature? Let's connect and I'd be happy to dive deeper into the technical implementation.

BM

Bechara El Maalouf

Full-Stack Developer specializing in Shopify Plus, React, Node.js, and automation solutions. Helping businesses grow through strategic development.

Learn More

Need Help With Your Project?

Let's discuss how I can help you achieve your goals through strategic development and optimization.