A sophisticated portfolio website built with React, TypeScript, and Framer Motion featuring interactive animations, parallax scrolling effects, and day/night mode.
git clone https://github.com/your-username/portfolio.git
cd portfolio
npm install
# or
yarn
npm start
# or
yarn start
Edit your personal information in the relevant feature components:
src/features/home/components/Hero.tsx
src/features/about/About.tsx
src/features/projects/Projects.tsx
src/features/contact/Contact.tsx
Customize colors in tailwind.config.js
:
theme: {
extend: {
colors: {
highlight: '#60A5FA', // Change primary accent color
background: {
DEFAULT: '#FFFFFF', // Light mode background
alt: '#F9FAFB', // Light mode alternative background
},
navy: {
DEFAULT: '#0F172A', // Dark text in light mode
light: '#64748B', // Secondary text
},
// ...other colors
},
},
}
Add your projects by editing the projects array in src/features/projects/Projects.tsx
:
const projects = [
{
title: "Your Project Name",
description: "Description of your project...",
tags: ["React", "TypeScript", "Other Tech"],
image: "/path/to/image.jpg", // Add your image to public folder
links: {
github: "https://github.com/yourusername/project",
live: "https://your-project-url.com",
},
},
// Add more projects...
];
/src
/assets # Static assets like images and icons
/components # Core components (Layout, Header)
/features # Feature-based components organized by domain
/about # About section components
/contact # Contact form components
/home # Home/hero section components
/projects # Project showcase components
/shared # Shared utilities and components
/animations # Animation components (FadeIn, SmoothScroll)
/hooks # Custom React hooks (useInView, useParallax)
/theme # Theme system components
/ui # Reusable UI components (Button, Input)
/utils # Utility functions
/styles # Global styles
/types # TypeScript type definitions
App.tsx # Main App component
index.tsx # Entry point
/public # Static assets
The portfolio is fully responsive and optimized for:
This project is set up for easy deployment:
# Build the production version
npm run build
# Deploy to GitHub Pages
npm run deploy
The project comes with several development tools:
# Run linting
npm run lint
# Fix linting issues
npm run lint:fix
# Format code with Prettier
npm run format
# Analyze bundle size
npm run analyze
This project is licensed under the MIT License - see the LICENSE file for details.