Expert · Capstone, portfolio and getting work · topic 32 of 34 · 30 min
Your portfolio and GitHub
Explanation
Quality beats quantity
A portfolio is the set of work you show. Recruiters and interviewers spend only a few minutes on each profile. Two or three finished projects that are live and solve real problems beat ten tutorial clones. A clone is an app built by following a video step by step. Clones look the same in every profile and show that you can follow steps, not that you can make decisions.
Your GitHub profile
- Profile README: create a public repository with exactly the same name as your GitHub username. Its README.md shows at the top of your profile. Write 4 to 6 lines: who you are, what you build, your main stack, and links to your best live project and LinkedIn.
- Pinned repositories: you can pin up to 6 repositories. Pin your capstone and one or two other real projects first. Do not pin practice exercises.
- Every pinned repository gets a one-line description, a website link (the live app) and a few topics (tags such as react, express, postgresql).
- Use a clear photo or simple avatar and your real name. The green contribution squares are nice, but quality matters more than daily commits.
The project README
A README is the front page of a repository. Many reviewers read only the README and click the live link, so it must answer their questions in order: what is this, does it work, how was it built, and can this person think?
# Notes app
Save, pin and search your study notes from any phone.
Live: https://notes-demo.example.com Demo video: (2-minute link)

## Problem
## Features
## Tech stack and why
## How to run locally
## Decisions and trade-offs
## Tests
## What I would do next| Section | What to write |
|---|---|
| Problem | Who has the pain and what it is, in two sentences |
| Live link, screenshots or GIF | A working HTTPS link at the top, then images of the main screens with alt text |
| Tech stack and why | React, Express, PostgreSQL... and one reason for each choice |
| How to run locally | Exact steps from git clone to a running app, with a .env.example that has no real secrets |
| Decisions and trade-offs | For example: "Sessions instead of JWT, because logout must work at once" |
| What I would do next | Two or three honest next steps, such as sharing notes or offline mode |
Clean commit history
Reviewers sometimes open the list of commits. Small commits with clear messages, like "Add ownership check to PATCH /api/notes/:id", show that you work in steps. One giant commit called "final" or "changes" shows nothing. Keep node_modules, build folders and .env files out of the repository with a .gitignore file.
Demo video, resume and LinkedIn
- A 2-minute demo video: screen-record the main flow on the live site (sign up, create, search, the extra feature) and explain it simply. Upload it as an unlisted video and link it in the README.
- Resume project bullets: start with an action verb, say what you built and add a real number you measured, for example: "Cut notes page load from 4.1 s to 1.8 s on slow 4G by lazy loading images and adding an index on (user_id, updated_at)."
- As a fresher, keep the resume to one page, and put the live link and GitHub link next to each project.
- LinkedIn: a clear headline ("Full-stack developer | React, Node.js, PostgreSQL"), your capstone in the Featured section, and a short post when you ship it about what you learned.
Watch the lesson
Your portfolio and GitHub · 1/7
Now that you have a capstone, you need to show it well. That is your portfolio.
Prefer a video by a teacher? Find free videos on “github profile readme and project readme for developer portfolio” on YouTube ↗
In real life: Two profiles, one interview call
Two freshers apply for the same junior full-stack role. The first has 12 repositories, all from tutorials, with no READMEs and no live links. The second has pinned only three: an expense splitter her flatmates use every month, the Notes app with tests running in GitHub Actions, and a small fix she made to an open-source library. Each README has a GIF, a live link and a "Decisions and trade-offs" section. The interviewer opens her live link before the call and spends the interview asking about her decisions, which she can explain well.
Practice (0/3 done)
Write readmeMissingSections(markdown, required). markdown is the text of a README; required is a list of section names like ["Problem", "How to run"]. A line is a heading when, after trimming spaces, it starts with 1 to 6 "#" signs followed by a space. A required name is present when some heading text contains it, ignoring upper and lower case. Return the required names that are missing, in their original order.
Write the README for your capstone repository using the skeleton from this lesson. Then ask a friend who has not seen the project to read it for 5 minutes and explain the app back to you.
Write three resume bullets for your capstone, a 4 to 6 line GitHub profile README and a LinkedIn headline. Then pin your best repositories.
Quick quiz
Read more (free)
Pass the quiz (60% or more) or mark this topic as done when you are ready.
Your progress is saved on this device only.