Welcome to Portfolio 2.0! This is the complete project for my personal portfolio website, featuring a slick, responsive front end built with cutting-edge web technologies and a powerful backend serving data through a RESTful API. It's the perfect showcase of my skills as a full-stack developer!
- Frontend: Next.js, Tailwind CSS, and React, offering a lightning-fast, interactive UI.
- Backend: Node.js and Express with MongoDB to handle all the data management through a seamless API.
- Deployment: Hosted on Vercel for both front and backend, ensuring smooth, scalable, and reliable performance.
- 🖼 Dynamic UI: Sleek design, fully responsive across all devices.
- ⚡ Fast and Smooth: Built with Next.js, enabling SSR and optimized performance.
- 🌈 Tailwind CSS: Easily maintainable design, making development faster.
- 🔄 Axios Integration: For clean and simple API consumption.
- 🎨 shadcn/ui: Leveraging beautiful, customizable components.
- 🔐 Secure API: RESTful services with MongoDB and Mongoose for persistent data storage.
- 📧 Contact Form Integration: Uses Nodemailer to send emails via Gmail SMTP.
- 📁 Well-structured Code: Organized codebase with clear separation of concerns.
- 🛠️ Scalable: Ready to handle more requests with ease.
- Next.js: The React framework for production.
- Tailwind CSS: Utility-first CSS framework.
- React: For building interactive UIs.
- Axios: HTTP client for API requests.
- shadcn/ui: Pre-built UI components.
- Node.js: JavaScript runtime.
- Express.js: Fast and minimal server framework.
- MongoDB: NoSQL database for storing all data.
- Mongoose: MongoDB object modeling for Node.js.
- Nodemailer: Handles contact form email delivery.
- Clone the frontend repository:
git clone https://github.com/PranayD1807/Portfolio-2.0.git
- Install dependencies:
npm install
- Run the development server:
npm run dev
The frontend will be running at http://localhost:3000.
-
Clone the backend repository:
git clone https://github.com/PranayD1807/Portfolio-2.0-Server.git
-
Install dependencies:
npm install
-
Set up your
.env
file:DATABASE=<your-database-url> MONGODB_PASSWORD=<your-mongodb-password> NODE_ENV=PROD PORT=8080 # Gmail for nodemailer GMAIL_ID=<your-gmail-id> GMAIL_PASSWORD=<your-gmail-password>
-
Start the backend server:
npm start
The backend will be running at http://localhost:8080.
Detailed API documentation is available in the postman.json
file, which can be imported into Postman for easy testing and exploration.
portfolio-2.0/
├── client/ # Next.js frontend code
├── server/ # Express.js backend code
├── postman.json # API collection for testing
└── README.md # This file!
- Frontend: https://pranaydhongade.site
- Backend: https://api.pranaydhongade.site
The project is deployed on Vercel, making both the frontend and backend accessible globally with zero configuration.
Feel free to reach out to me via the contact form on the portfolio or directly through my email.
This project is licensed under the MIT License.
Happy Coding! 🎉