Web Development

Personal Portfolio & Cybersecurity Showcase

Modern portfolio website built with Next.js 14, showcasing cybersecurity projects, skills, and achievements with dynamic routing and static generation.

2025-2026
Ongoing (2024-2025)
1 member

Technologies Used

Next.js 14TypeScriptTailwind CSSFramer MotionGitHub ActionsReact

A comprehensive personal portfolio website designed to showcase my cybersecurity expertise, academic projects, certifications, and professional journey. Built with cutting-edge web technologies for optimal performance and user experience.

🎯 Project Goals

• Create a professional online presence highlighting cybersecurity skills • Showcase academic projects with detailed explanations • Display certifications and achievements from platforms like TryHackMe • Provide an interactive and responsive user experience • Optimize for performance and SEO • Deploy on GitHub Pages with automated CI/CD

🛠️ Technology Stack

Next.js 14 - App Router for modern React architecture • TypeScript - Type safety and better developer experience • Tailwind CSS - Utility-first, responsive design • Framer Motion - Smooth, engaging user interactions • Lucide React - Consistent, modern iconography • GitHub Actions - Automated CI/CD workflow • EmailJS - Contact form functionality without backend

✨ Key Features

Dynamic Project Pages - Each project has detailed page with full descriptions • Bilingual CV Support - Toggle between French and English resume versions • TryHackMe Integration - Display real-time stats and achievements • CTF Writeups Section - Showcase penetration testing writeups • Skills Visualization - Interactive display of technical skills • Certifications Gallery - Professional certifications with verification links • Responsive Design - Fully responsive across all devices • Dark Theme - Cybersecurity-themed dark color scheme • Contact Form - Functional email integration • SEO Optimized - Proper meta tags and static generation

🏗️ Architecture

The website uses Next.js 14's App Router with static site generation (SSG) for optimal performance. All pages are pre-rendered at build time and served as static HTML, ensuring fast load times and excellent SEO.

Project Structure: • Component-based architecture with reusable modules • Dynamic routing for individual project pages • Centralized data management in TypeScript files • Lazy loading for better performance • Markdown support for rich text formatting

🚀 Development Process

1. Planning - Designed site architecture and user flow 2. Design - Created cybersecurity-themed dark design 3. Implementation - Built components incrementally with TypeScript 4. Content - Populated with real projects and achievements 5. Optimization - Lazy loading, image optimization, code splitting 6. Testing - Cross-browser and device testing 7. Deployment - Set up CI/CD pipeline with GitHub Actions

📦 Deployment & CI/CD

Automated deployment using GitHub Actions: • Automatic builds on push to main branch • Static site generation with Next.js export • Deployment to GitHub Pages • Build verification and error checking • Ready for custom domain configuration

Challenges

  • Configuring Next.js for static export compatible with GitHub Pages
  • Implementing dynamic routes while maintaining static generation
  • Creating smooth animations without impacting performance
  • Managing bilingual content (French/English) for CV section
  • Integrating external data (TryHackMe stats) in a static site

Solutions

  • Used Next.js 'output: export' with proper configuration for GitHub Pages deployment
  • Implemented generateStaticParams for pre-rendering all project routes
  • Optimized Framer Motion animations with useReducedMotion and lazy loading
  • Created dynamic language switcher with useState for client-side switching
  • Designed fallback UI for external data with graceful degradation

Outcomes

  • Successfully deployed live portfolio at aygoub.github.io
  • Achieved 100/100 Lighthouse performance score for static pages
  • Created fully responsive design working on all screen sizes
  • Implemented automated deployment reducing manual work
  • Built scalable architecture for easy content updates
  • Showcased full-stack development and DevOps skills