A modern, interactive portfolio website showcasing my skills, projects, and experience as a software engineer. Built with cutting-edge web technologies featuring 3D elements, smooth animations and responsive design.
- 3D Computer Model - Interactive Three.js scene
- Scrambled Text Animation - Dynamic text effects
- Hover & Expand Tech Skills - Interactive technology showcase
- Project Showcase - Animated project cards with GitHub links
- Responsive Design - Works on all device sizes
- Smooth Animations - Framer Motion transitions
- Dual Mode Aesthetic - Easy-on-the-eyes design
- Starry Background - Particle-like, with 3 hooks utilized
- React.js - Frontend framework
- Tailwind CSS - Utility-first CSS framework
- Framer Motion - Animation library
- Three.js - 3D graphics library
- React Three Fiber - Three.js for React
- Vite - Build tool
- Vercel - Deployment platform
- Python - For preprocessing & displaying light-mode 3D animations
- Hero Section - Introduction with animated text, resume and info cards
- About - Overview with service cards
- Experience - Work history timeline
- Open Source - Showcase of merged PRs / contributions made to prominent OSS
- Achievements - Honors and awards
- Projects - Showcase of featured work
- Heatmap - Dynamically updating GitHub heatmap showcase
- Skills - Categorically classified tech stack
- Certifications - Professional credentials
- Contact - 3D computer and contact form
To run this project locally:
- Clone the repository:
git clone https://github.com/Soumilgit/Soumil_Portfolio.git
- Navigate to the project directory:
cd Soumil_Portfolio - Install dependencies:
npm install
- Start the development server:
npm run dev
To personalize this portfolio:
- Update personal information & work, skillset etc. details in
src/constants/index.js - Replace 3D model in
public/desktop_pc/ - Adjust colors in
tailwind.config.cjs,src/index.cssandsrc/styles.js - Add your own flavour in existing files under folders
Marquees,svg,utilsetc.
- Dual-Theme Support (Light & Dark): Full implementation of light and dark mode toggles with customized CSS themes. Light mode includes a custom grayscale-processed aurora background and white-bg versions of images.
- Asset Preprocessing Script: Added a Python script (
scripts/preprocess_light_assets.py) that handles grayscale mapping of image/animation frame elements, specifically adjusting contrast for the background sky, aurora waves, and star particles. - Theme-Aware Media Assets: Dynamic asset loading in components like Hero and Achievements (e.g., swapping between
codolio.png/codolio-dark.pngand light/dark circular logo variants for Emfinity). - ESM & SSR Interop Optimization: Resolved production-minified React Error #130 crashes by introducing robust interop checks to handle double-default wrapped CommonJS libraries (
react-fast-marqueeandreact-github-calendar) in ESM/Vite environments. - Re-ordered positioning of components for better UX: First, I swapped the positions of Skillset with Achievements, then, further swapped the positions of Skillset with Projects. Finally, applied the same reordering across the navlinks as well.
- Optimized 3D assets
- Lazy loading components
- Efficient animations
- Responsive image handling
This project is licensed under the MIT License.