A personal portfolio website is essential for showcasing your skills, projects, and achievements in a professional way. In this guide, we’ll walk you through creating a modern, responsive, and stylish portfolio using HTML, CSS, and JavaScript. By the end of this tutorial, you’ll have a fully functional portfolio to impress potential clients or employers. π
Why Do You Need a Personal Portfolio Website?
A personal portfolio website helps you:
βοΈ Showcase your projects and skills professionally.
βοΈ Build your personal brand online.
βοΈ Improve your chances of getting hired.
βοΈ Allow clients and recruiters to contact you easily.
Now, let’s get started with the development! π¨βπ»π¨
Project Overview
We will build a fully responsive portfolio website that includes:
β
Home Section β Introduction and profile picture.
β
About Section β Your skills and experience.
β
Projects Section β Showcasing your work with images and links.
β
Contact Section β Contact form and social media links.
Step 1: Setting Up the Basic HTML Structure
Create an index.html file and add the following basic structure:
htmlCopyEdit<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>My Portfolio</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<header>
<h1>Welcome to My Portfolio</h1>
<nav>
<ul>
<li><a href="#about">About</a></li>
<li><a href="#projects">Projects</a></li>
<li><a href="#contact">Contact</a></li>
</ul>
</nav>
</header>
<section id="about">
<h2>About Me</h2>
<p>Hello! I'm a web developer passionate about building creative and functional websites.</p>
</section>
<section id="projects">
<h2>My Projects</h2>
<div class="project">
<img src="project1.jpg" alt="Project 1">
<p>Project description goes here.</p>
</div>
</section>
<section id="contact">
<h2>Contact Me</h2>
<form>
<input type="text" placeholder="Your Name">
<input type="email" placeholder="Your Email">
<textarea placeholder="Your Message"></textarea>
<button type="submit">Send</button>
</form>
</section>
<script src="script.js"></script>
</body>
</html>
Step 2: Styling with CSS for a Modern Look
Now, create a style.css file and add styles to make the portfolio look clean and professional.
cssCopyEditbody {
font-family: Arial, sans-serif;
text-align: center;
margin: 0;
padding: 0;
background: #f4f4f4;
}
header {
background: #007BFF;
color: white;
padding: 20px;
}
nav ul {
list-style: none;
padding: 0;
}
nav ul li {
display: inline;
margin: 0 15px;
}
nav ul li a {
color: white;
text-decoration: none;
}
section {
margin: 50px;
padding: 20px;
background: white;
border-radius: 10px;
box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.15);
}
button {
background: #007BFF;
color: white;
border: none;
padding: 10px;
cursor: pointer;
}
Step 3: Adding JavaScript for Interactivity
Create a script.js file to handle interactive elements like form validation and smooth scrolling.
jsCopyEditdocument.querySelectorAll('nav ul li a').forEach(anchor => {
anchor.addEventListener('click', function(event) {
event.preventDefault();
const section = document.querySelector(this.getAttribute('href'));
section.scrollIntoView({ behavior: 'smooth' });
});
});
This script ensures smooth scrolling when navigating between sections.
Step 4: Making the Website Responsive
To ensure your portfolio looks great on all devices, add the following CSS styles for responsiveness:
cssCopyEdit@media screen and (max-width: 768px) {
nav ul {
display: flex;
flex-direction: column;
}
.project img {
width: 100%;
height: auto;
}
}
Now your website will be mobile-friendly and adapt to different screen sizes. π±
Step 5: Deploying Your Portfolio Online
Once your portfolio is ready, you can host it for free using:
- GitHub Pages (Best for beginners)
- Netlify (Great for quick deployment)
- Vercel (Perfect for frontend projects)
To deploy on GitHub Pages, simply:
1οΈβ£ Push your code to GitHub.
2οΈβ£ Go to Settings > Pages in your repository.
3οΈβ£ Select the main branch and save.
Your portfolio will be live at https://yourusername.github.io/portfolio/ π
πΊ Watch the Full Tutorial on YouTube
Final Thoughts
Congratulations! π You’ve built a fully functional personal portfolio website using HTML, CSS, and JavaScript. You can customize it further by:
β
Adding more sections (Skills, Testimonials, etc.)
β
Integrating a working contact form with PHP or Firebase
β
Animating elements using CSS transitions or JavaScript libraries
If you found this guide helpful, share it with others, and feel free to ask any questions in the comments! π
π Code Repository:
GitHub – Portfolio Website
Happy coding! ππ¨
