A cutting-edge, modern portfolio website built with React, TypeScript, and advanced web technologies. This portfolio showcases exceptional design, smooth animations, and interactive features that demonstrate technical expertise and creative innovation.
- Modern Dark Theme with gradient accents and glassmorphism effects
- Responsive Design optimized for all devices and screen sizes
- Smooth Animations powered by Framer Motion
- Interactive 3D Background using Three.js particle system
- Custom CSS Animations with Tailwind CSS
- React 18 with TypeScript for type safety
- Vite for fast development and building
- Tailwind CSS for utility-first styling
- Framer Motion for smooth animations and transitions
- Three.js for 3D graphics and particle effects
- React Hook Form for form handling and validation
- React Hot Toast for notifications
- React Scroll for smooth navigation
- Smooth Scrolling Navigation with active section highlighting
- Animated Skill Bars with progress indicators
- Project Filtering by category
- Working Contact Form with validation
- Hover Effects and micro-interactions
- Loading Screen with animated elements
- Scroll Progress Indicator
- Hero Section - 3D animated background with particle system
- About Section - Interactive timeline and personal information
- Skills Section - Animated skill bars with 3D cards
- Projects Section - Filterable gallery with hover effects
- Experience Section - Interactive timeline
- Contact Section - Working contact form with validation
- Node.js (v16 or higher)
- npm or yarn package manager
-
Clone the repository
git clone https://github.com/yourusername/portfolio-website.git cd portfolio-website -
Install dependencies
npm install # or yarn install -
Start the development server
npm run dev # or yarn dev -
Open your browser Navigate to
http://localhost:3000to view the website.
npm run build
# or
yarn buildThe built files will be in the dist directory.
Update the following files with your information:
src/components/Hero.tsx- Update name, title, and social linkssrc/components/About.tsx- Update personal info and timelinesrc/components/Skills.tsx- Update skills and proficiency levelssrc/components/Projects.tsx- Add your projectssrc/components/Experience.tsx- Update work experiencesrc/components/Contact.tsx- Update contact information
- Colors: Modify the color palette in
tailwind.config.js - Fonts: Update font families in
tailwind.config.js - Animations: Customize animations in
src/index.css
Update the meta tags in index.html:
- Title and description
- Open Graph tags
- Twitter Card tags
- Favicon links
- React 18 - UI library
- TypeScript - Type safety
- Vite - Build tool and dev server
- Tailwind CSS - Utility-first CSS framework
- Framer Motion - Animation library
- Three.js - 3D graphics library
- @react-three/fiber - React renderer for Three.js
- @react-three/drei - Useful helpers for React Three Fiber
- React Hook Form - Form handling
- React Hot Toast - Toast notifications
- React Scroll - Smooth scrolling navigation
- ESLint - Code linting
- PostCSS - CSS processing
- Autoprefixer - CSS vendor prefixing
src/
βββ components/
β βββ About.tsx # About section with timeline
β βββ Contact.tsx # Contact form and information
β βββ Experience.tsx # Work experience timeline
β βββ Hero.tsx # Hero section with 3D background
β βββ LoadingScreen.tsx # Animated loading screen
β βββ Navigation.tsx # Navigation component
β βββ ParticleBackground.tsx # Three.js particle system
β βββ Projects.tsx # Projects gallery with filtering
β βββ Skills.tsx # Skills section with progress bars
βββ App.tsx # Main application component
βββ main.tsx # Application entry point
βββ index.css # Global styles and Tailwind imports
The hero section features an interactive 3D particle system built with Three.js. Particles respond to mouse movement and create an immersive visual experience.
All animations are powered by Framer Motion, providing smooth transitions, hover effects, and scroll-triggered animations throughout the website.
The website is fully responsive and optimized for all device sizes, from mobile phones to large desktop screens.
The contact form includes comprehensive validation using React Hook Form, with real-time error feedback and success notifications.
- Lazy loading of components
- Optimized images and assets
- Efficient animation rendering
- Minimal bundle size
- Fast Loading - Optimized with Vite
- Smooth Animations - 60fps animations
- Responsive Images - Optimized for all devices
- SEO Optimized - Proper meta tags and structure
- Accessibility - WCAG compliant design
- Cross-browser - Works on all modern browsers
- Chrome (latest)
- Firefox (latest)
- Safari (latest)
- Edge (latest)
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Framer Motion for smooth animations
- Three.js for 3D graphics
- Tailwind CSS for utility-first styling
- Lucide React for beautiful icons
- React Hook Form for form handling
Sai Tarun - [email protected]
Project Link: https://github.com/yourusername/portfolio-website
β Star this repository if you found it helpful!