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: swagatamandal16029@gmail.com
- LinkedIn: Swagata Mandal
- GitHub: Hacknova49
Built with β€οΈ by Swagata Mandal