A portfolio link is the cheapest career advantage available to you: it turns "I know Python" into a page a recruiter can open. It also costs nothing if you use student offers properly. Here is the whole project, start to finish.
Step 1: decide what the site is for
Pick one of these before you touch a website builder, because they have different structures:
- Job or internship portfolio: projects first, short about section, contact. Five pages maximum.
- Freelance/commission page: services, examples of work, prices, contact form.
- Academic CV site: publications, teaching, research interests, downloadable CV.
Step 2: get a domain you can keep
A free subdomain (yourname.github.io) is fine for your first year. When you are ready
for a proper address:
- Your GitHub student pack includes a free domain for a year from a registrar partner.
- Registrars run cheap first-year deals on
.me,.devand country domains. Check the renewal price before you commit — first year cheap and year two expensive is how most students get caught. - Use your real name in the domain if you plan to work under your own name. It is the easiest long-term choice.
Step 3: choose hosting (all of these are free)
| Option | Best for | Catch |
|---|---|---|
| GitHub Pages | Static sites, and it doubles as a Git lesson | Public repository unless you pay |
| Netlify / Cloudflare Pages / Vercel | Drag-and-drop deploy, custom domain, HTTPS | Free tier limits are generous but exist |
| No-code builders | Zero setup, fast results | Free plan often shows a badge and caps pages |
For a first site, drag-and-drop static hosting is the fastest path: build the page, drop the folder, connect the domain, done.
Step 4: the structure that works
- Hero: your name, one line about what you do, one sentence of proof ("Computer Science student, built a timetable app used by 300 classmates"), and a visible email.
- Projects (the important part): three to five projects. Each one gets a screenshot, one paragraph on the problem, one on what you did, one on the tech, plus a live link and a repository link. If it does not run anywhere, say so honestly — coursework counts.
- About: short. Course, year, what you are learning now, what you want next.
- CV: link to a PDF version, updated whenever your projects page changes.
- Contact: a mail address people can copy, plus your professional profiles.
Step 5: write it so it reads well
- Use plain sentences. Cut every "passionate about leveraging".
- Numbers beat adjectives: "cut page load from 4s to 1.2s" is stronger than "optimised performance".
- One idea per paragraph, and no paragraph longer than four lines.
- Spell-check the page; a portfolio with typos undermines the writing sample it is supposed to be.
Step 6: the free SEO and analytics checklist
- Unique
<title>and meta description on every page, with your name in them. - A sitemap file and a robots file so search engines can crawl you.
- Register the site in Google Search Console and submit the sitemap.
- Free analytics, or a privacy-friendly alternative if you would rather not use cookies.
- Compress images. A 4MB screenshot on the homepage is the fastest way to lose a phone visitor.
- Open the site on your own phone and fix whatever looks broken there.
Step 7: keep it alive
Update the projects page once a semester. Then use it: put the link in your email signature, your CV header, your GitHub profile and your LinkedIn. A portfolio you never link to is a hobby; a portfolio in your signature is a job search.
If you have not claimed the free domain and tooling yet, start with the GitHub Student Pack walkthrough — and browse the developer tool deals for the tools that build it fastest.