A portfolio shows your work to the world. GitHub Pages hosts static sites for free, with no credit card and no server bills. The steps below walk through putting yours up.
Why GitHub Pages
It’s free for public repositories. Static files are served from a global CDN, so pages load fast. HTTPS comes free on your own subdomain, and on your own domain if you have one. Push your code and your site updates automatically.
Step 1: Create the repository
Go to github.com/new. Name it exactly your-username.github.io, using your actual username. Make it public. Initialize it with a README.
That special name tells GitHub Pages this repo is your user site.
Step 2: Add a homepage
In the repo, create an index.html. You can also use a static site generator like Astro or Jekyll. A minimal starting point looks like this.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>My Dev Portfolio</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<h1>Hi, I'm [Your Name]</h1>
<p>I build web apps and solve problems. See my projects below.</p>
<a href="https://github.com/your-username">GitHub</a>
</body>
</html>
Step 3: Turn on Pages
In your repo, go to Settings → Pages. Under Source, choose Deploy from a branch, select main, and save. GitHub builds and publishes your site at https://your-username.github.io.
If you’re using a framework, you can set up a GitHub Actions workflow to build the site and deploy the output instead. The official Pages docs cover this.
Step 4: Make it yours
A portfolio is more than a landing page. Include a clear intro about who you are and what you build. Show your best few projects, each with a one-line description and a link to the repo. Add contact links for GitHub, email, and LinkedIn. Link your resume.
Step 5: Add a custom domain (optional)
If you own a domain, enter it under Settings → Pages in the custom domain field, then add a DNS record. Pages handles the HTTPS certificate automatically.
Project pages too
Every public repository can publish a site, including the special username.github.io one. In any repo, go to Settings → Pages, choose Deploy from a branch, and select main or a gh-pages branch. It goes live at https://your-username.github.io/your-repo-name.
That setup is perfect for showcasing each DevSoc project you build.
What’s next
Style it with Tailwind or a framework you’re learning. Put your portfolio link in your GitHub bio, your email signature, and your resume. Keep it updated as you ship new work.
Ship your portfolio this week. When it’s live, share it in the DevSoc Discord. We’d love to see what you build.
