A modern, responsive portfolio website showcasing skills, projects, and contact information.
You can view the website using the link in the about section.
- Modern UI with clean design
- Smooth animations and transitions
- Responsive design for all screen sizes
- Dark/light mode toggle
- Contact form with server-side email handling
- Easy configuration through JavaScript variables
git clone https://github.com/SriramChowdaryMogalapu/Portfolio.git
cd Portfolio
npm install express body-parser cors nodemailer
For security reasons, sensitive information like SMTP credentials should not be hardcoded in your files. Instead:
- Create a
.env
file in the root directory:
SMTP_HOST=smtp.elasticemail.com
SMTP_USERNAME=your-email@example.com
SMTP_PASSWORD=your-password
- Update the
config.js
file to use environment variables:
require('dotenv').config();
module.exports = {
smtp: {
host: process.env.SMTP_HOST,
username: process.env.SMTP_USERNAME,
password: process.env.SMTP_PASSWORD
}
};
- Install dotenv:
npm install dotenv
node server.js
The server will start on port 3000 by default. You can access the website at http://localhost:3000
You can easily customize the portfolio by editing the CONFIG
object in new-script.js
:
- Personal information (name, title, contact details)
- Skills and expertise
- Projects
- Social media links
- Never commit sensitive information like API keys, passwords, or tokens to your repository
- Use environment variables for all sensitive information
- Add
.env
to your.gitignore
file - Use server-side code to handle sensitive operations like sending emails
When deploying to a hosting service like Netlify, Vercel, or Heroku:
- Set up environment variables in your hosting provider's dashboard
- Configure the build settings according to your hosting provider's requirements
- Deploy your application
This project is open source and available under the MIT License.