A modern, responsive personal portfolio website built with React, TypeScript, and TailwindCSS.
- Responsive Design: Looks great on all devices - mobile, tablet, and desktop
- Dark Mode UI: Elegant dark theme for a modern look
- Dynamic Data: Fetches real-time data from GitHub and other sources
- Project Showcase: Displays your projects with details and links
- Skills Section: Visual representation of your technical skills
- Contact Form: Working contact form for visitor inquiries
- Performance Optimized: Fast loading and smooth animations
- SEO Ready: Built with search engine optimization in mind
- Quick Start
- Project Structure
- Technologies Used
- Customization
- Data Integration
- Deployment
- Contributing
- License
- Node.js (v14+)
- npm or yarn
- Clone the repository:
git clone https://github.com/ant3869/portfolio.git
cd portfolio
- Install dependencies:
npm install
# or
yarn install
- Create a
.env
file in the root directory:
REACT_APP_GITHUB_USERNAME=your_github_username
REACT_APP_FORMSPREE_ID=your_formspree_id
- Start the development server:
npm start
# or
yarn start
- Open http://localhost:3000 to view it in the browser.
portfolio/
βββ public/ # Public assets
β βββ icons/ # Icon SVGs
β βββ images/ # Image assets
β βββ projects/ # Project screenshots
βββ src/ # Source code
β βββ components/ # UI components
β β βββ About.tsx
β β βββ Contact.tsx
β β βββ Hero.tsx
β β βββ Projects.tsx
β β βββ Skills.tsx
β β βββ ...
β βββ context/ # React Context API
β β βββ DataContext.tsx
β βββ hooks/ # Custom React hooks
β β βββ useGithubData.ts
β βββ services/ # API services
β β βββ github.ts
β β βββ formspree.ts
β βββ types/ # TypeScript types
β β βββ index.ts
β βββ utils/ # Utility functions
β β βββ skillsExtractor.ts
β βββ App.tsx # Main App component
β βββ index.tsx # Entry point
βββ .env # Environment variables
βββ package.json # Dependencies and scripts
βββ tailwind.config.js # TailwindCSS configuration
βββ tsconfig.json # TypeScript configuration
- Frontend Framework: React
- Type System: TypeScript
- Styling: TailwindCSS
- Data Fetching: Axios
- Form Handling: Formspree
- Animations: Framer Motion
- Icons: Hero Icons
- Deployment: Vercel/GitHub Pages