A modern, responsive portfolio website built with React, showcasing my journey as a second-year student aspiring to become a data scientist.
- Modern Design: Clean, professional design with smooth animations
- Responsive: Fully responsive across all devices
- Performance Optimized: Fast loading with optimized assets
- SEO Ready: Proper meta tags and structured data
- Interactive: Smooth scrolling, hover effects, and animations
- Tech Stack Showcase: Rolling gallery of technologies
- Project Portfolio: Featured projects with GitHub integration
- Frontend: React, JavaScript, HTML, CSS
- Styling: Tailwind CSS, Framer Motion
- Build Tool: Vite
- Icons: Lucide React
- UI Components: Radix UI
- Deployment: Vercel/Netlify ready
-
Clone the repository
git clone https://github.com/Hacknova49/portfolio.git cd portfolio
-
Install dependencies
npm install
-
Start development server
npm run dev
-
Build for production
npm run build
- Connect your GitHub repository to Vercel
- Deploy automatically - Vercel will detect the Vite configuration
- Custom domain - Add your custom domain in Vercel dashboard
- Connect your GitHub repository to Netlify
- Build settings:
- Build command:
npm run build
- Publish directory:
dist
- Build command:
- Deploy
- Add GitHub Pages action:
name: Deploy to GitHub Pages on: push: branches: [main] jobs: deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v2 with: node-version: "18" - run: npm ci - run: npm run build - uses: peaceiris/actions-gh-pages@v3 with: github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./dist
src/
├── components/ # React components
│ ├── ui/ # Reusable UI components
│ ├── HeroSection.jsx
│ ├── AboutSection.jsx
│ ├── TechStackSection.jsx
│ ├── ProjectsSection.jsx
│ ├── SkillsSection.jsx
│ ├── ContactSection.jsx
│ └── Footer.jsx
├── Beams/ # Background effects
├── TiltedCard/ # Custom card component
├── TextPressure/ # Text animation
├── App.jsx # Main app component
└── main.jsx # Entry point
Create a .env
file for any environment-specific variables:
VITE_APP_TITLE=Swagata Mandal Portfolio
VITE_APP_DESCRIPTION=Second Year Student & Aspiring Data Scientist
- Update personal information in component files
- Modify projects in
ProjectsSection.jsx
- Change tech stack in
TechStackSection.jsx
- Update contact information in
ContactSection.jsx
- Lighthouse Score: 90+ across all metrics
- Bundle Size: Optimized with code splitting
- Loading Speed: Fast initial load with lazy loading
- SEO: Proper meta tags and structured data
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
This project is open source and available under the MIT License.
- Email: [email protected]
- LinkedIn: Swagata Mandal
- GitHub: Hacknova49
Built with ❤️ by Swagata Mandal