A premium, professional MERN stack portfolio website showcasing AI/ML expertise, projects, achievements, and coding profiles.
- Modern Design: Premium dark theme with glassmorphism effects
- Responsive Layout: Works perfectly on mobile, tablet, and desktop
- Dark/Light Mode: Toggle between dark and light themes
- Contact Form: Fully functional contact form with MongoDB storage
- Resume Download: Download resume with a single click
- Project Showcase: Display featured AI/ML projects with details
- Achievements: Highlight hackathons, patents, and milestones
- Skills Section: Comprehensive skills organized by category
- Coding Profiles: LeetCode, CodeChef, SkillRack, GeeksforGeeks stats
- Certificate Display: Show professional certifications
- Timeline Journey: Visual representation of career growth
- Smooth Animations: Subtle micro-interactions throughout
- React 18 - UI library
- Vite - Build tool & dev server
- React Router DOM - Client-side routing
- Axios - HTTP client
- CSS3 - Styling with custom design system
- JavaScript ES6+ - Modern JavaScript
- Node.js - Runtime
- Express.js - Web framework
- MongoDB - NoSQL database
- Mongoose - ODM for MongoDB
- JWT - Authentication (ready to use)
- bcryptjs - Password hashing
- Nodemailer - Email support
- Space Grotesk - Display font
- Inter - Body font
- JetBrains Mono - Code font
portfolio-project/
βββ frontend/
β βββ src/
β β βββ components/
β β β βββ Navbar.jsx
β β βββ pages/
β β β βββ Hero.jsx
β β β βββ About.jsx
β β β βββ Skills.jsx
β β β βββ Projects.jsx
β β β βββ Journey.jsx
β β β βββ Achievements.jsx
β β β βββ Certificates.jsx
β β β βββ Patent.jsx
β β β βββ CodingProfiles.jsx
β β β βββ Contact.jsx
β β βββ App.jsx
β β βββ index.css
β β βββ main.jsx
β βββ public/
β β βββ profile.jpg (β ADD YOUR IMAGE HERE)
β β βββ projects/
β β βββ project1.png (β ADD SCREENSHOT HERE)
β β βββ project2.png (β ADD SCREENSHOT HERE)
β βββ index.html
β βββ vite.config.js
β βββ package.json
β
βββ backend/
β βββ models/
β β βββ Contact.js
β βββ routes/
β β βββ contact.js
β β βββ projects.js
β β βββ resume.js
β βββ public/
β β βββ Gowshalya_P_Resume.pdf (β ADD YOUR RESUME HERE)
β βββ server.js
β βββ .env.example
β βββ package.json
β
βββ SETUP_INSTRUCTIONS.md (β READ THIS FIRST!)
βββ README.md
βββ .gitignore
βββ LICENSE
# Install backend dependencies
cd backend
npm install
# Install frontend dependencies
cd frontend
npm installCreate .env file in backend/:
MONGODB_URI=mongodb+srv://username:password@cluster.mongodb.net/portfolio
PORT=5000
CLIENT_URL=http://localhost:5173
Get MongoDB URI from MongoDB Atlas
Profile Image:
- Place at:
frontend/public/profile.jpg - Update:
frontend/src/pages/Hero.jsx
Resume:
- Place at:
backend/public/Gowshalya_P_Resume.pdf
Project Screenshots:
- Place at:
frontend/public/projects/project1.png - Place at:
frontend/public/projects/project2.png
Terminal 1 - Backend:
cd backend
npm run dev
# Runs on http://localhost:5000Terminal 2 - Frontend:
cd frontend
npm run dev
# Runs on http://localhost:5173Visit http://localhost:5173 in your browser!
- Eye-catching introduction
- Call-to-action buttons
- Quick statistics
- Profile image
- Professional bio
- Expertise areas
- Career objective
- Contact links
- Organized by category
- 6 skill categories
- Interactive hover effects
- Featured project cards
- Project descriptions
- Technologies used
- Links to GitHub & live demos
- Timeline of career growth
- Key milestones
- Learning path
- Insights cards
- Hackathon wins
- Patent status
- AI projects
- Research work
- Summary statistics
- Professional certifications
- Issuing organizations
- Completion dates
- Certificate count stats
- Patent details
- Innovation overview
- Technical implementation
- Application timeline
- LeetCode stats
- CodeChef stats
- SkillRack stats
- GeeksforGeeks stats
- Core competencies
- Contact form
- Direct contact methods
- Resume download button
- Social media links
Edit frontend/src/index.css:
:root {
--bg: #080808;
--primary: #B7FF00;
--secondary: #8B3DFF;
/* More colors... */
}Already using Google Fonts:
- Space Grotesk (Display)
- Inter (Body)
- JetBrains Mono (Code)
All content is hardcoded and can be easily edited in respective page components.
Vercel (Recommended):
npm install -g vercel
cd frontend
vercelNetlify:
npm run build
# Drag and drop 'dist' folder to NetlifyRender.com:
- Push to GitHub
- Create new Web Service on Render
- Connect your repo
- Set Environment Variables
- Deploy!
Railway.app: Similar process to Render.com
- Never commit
.envfile - Use environment variables for sensitive data
- Keep MongoDB credentials private
- Validate all form inputs on backend
- Use HTTPS in production
The contact form:
- Sends data to
/api/contact/send - Stores in MongoDB
- Returns success/error message
- Frontend shows user feedback
Make sure MongoDB is properly configured!
Port Already in Use:
# Change PORT in .env or kill process
lsof -ti:5000 | xargs kill -9Module Not Found:
npm install
# or
npm install --save <package-name>MongoDB Connection Error:
- Verify MongoDB URI
- Check IP whitelist in MongoDB Atlas
- Ensure credentials are correct
Images Not Loading:
- Check file paths (case-sensitive)
- Clear browser cache
- Verify files exist in
frontend/public/
- Add blog section
- Implement admin panel
- Add testimonials section
- Email notifications for contacts
- Analytics tracking
- Multi-language support
- Search functionality
This project is open source and available under the MIT License.
Gowshalya P
- π§ Email: gowshalyaperumalsamy@gmail.com
- π± Phone: +91 8072538697
- πΌ LinkedIn: Gowshalya P - ML Engineer
- π GitHub: Gowshalyap-hub
If you need help:
- Read
SETUP_INSTRUCTIONS.mdfirst - Check troubleshooting section
- Review environment variables
- Contact support
Happy Coding! π
Built with β€οΈ for showcasing AI & ML expertise