Adam Saadi: Personal Portfolio Website by Adam SaadiAdam Saadi: Personal Portfolio Website by Adam Saadi

Adam Saadi: Personal Portfolio Website

Adam Saadi

Adam Saadi

The Brief

I needed a personal portfolio site that could do more than just list my work. It had to communicate who I am as a developer and designer, make it easy for potential clients to get in touch, and perform well in search results. No templates, no page builders. Built from scratch.

What I Built

The site is a fully custom React.js application with three core sections: a homepage introducing my services (web design, web development, and Python development), an about section with my background and skill set, and a work portfolio showcasing completed projects.
Custom React architecture: Over 1,500 lines of JSX across multiple components, with React Router handling smooth client-side navigation between pages. No full-page reloads, no lag.
Hand-written styling: 750+ lines of custom CSS. Every layout, animation, and responsive breakpoint was written from scratch to match the exact design I had in mind. No CSS frameworks.
Contact integration: Implemented EmailJS for real-time form submissions, so visitors can reach out directly from the site without needing a backend server.
SEO optimization: Built with search visibility in mind from the start. Clean semantic HTML, proper meta tags, and optimized load times to rank well in search results.
Deployment: Launched on GitHub Pages for fast, reliable hosting with the option to scale to Google Cloud as traffic grows.

The Outcome

The site became my primary professional presence online, the place I send clients, collaborators, and anyone who wants to see what I do. It's still live at adamsaadi.com and continues to serve as my digital business card and portfolio hub.
Like this project

Posted Jul 15, 2026

Built my personal portfolio site from scratch using React.js, featuring custom styling, React Router navigation, EmailJS contact integration, and SEO optimization.

Likes

0

Views

0

Timeline

Jun 1, 2022 - Aug 1, 2022