A good profile README answers three questions in a few seconds: who are you, what do you build, and how can someone reach you? Everything else is a bonus. Here are 15 ideas, from essentials to fun extras. Pick the handful that fit you; using all of them at once is too much.
The essentials
1. A one-line introduction
Lead with what you do, not a generic greeting. "Android developer building offline-first apps for healthcare" tells a visitor far more than "Hi there π" on its own.
2. What you're working on and learning
A short list gives people a reason to start a conversation:
- π Working on **an open-source invoicing tool**
- π± Learning **Go and Kubernetes**
- π― Looking to collaborate on **developer tools**
- π¬ Ask me about **React performance**3. Featured projects
Two to four projects, each with one sentence on what it does and why it's interesting. Link to the repo and, if there is one, a live demo. Repository pin cards (see the stats guide) make these look tidy.
4. Tech stack
Badges or an icon row of the technologies you actually use. Group them by category when you have more than ten. See the badge guide.
5. Contact links
Email, LinkedIn, a personal site or a blog. Make it obvious how to reach you, especially if you're job hunting.
Add some personality
6. An animated banner
A header banner with your name, in your colours. capsule-render generates wave, block and other shapes from a URL.
7. A typing headline
readme-typing-svg types out and erases several lines, so you can rotate between the things you do without a wall of text.
8. A fun fact
One line that makes you memorable: a hobby, a side project, where you're based. It humanises a page of badges.
9. An About section written as code
Developers enjoy reading code, so a short object with your role, stack and focus is a playful twist:
const alex = {
role: "Full-stack developer",
location: "Colombo",
stack: ["TypeScript", "React", "Node.js"],
currentFocus: "Realtime collaboration",
};Live and auto-updating content
10. GitHub stats and streaks
Stats cards, top languages and contribution streaks update themselves. Two or three are plenty. See how to add GitHub stats.
11. Your latest blog posts
The blog-post-workflow GitHub Action reads your blog's RSS feed (dev.to, Medium, Hashnode or your own site) on a schedule and rewrites a section of your README with your newest posts.
12. A contribution snake
Platane/snk is a GitHub Action that generates an animated snake eating your contribution graph. It's a fun visual if you commit regularly.
13. Coding time stats
If you use WakaTime, actions such as waka-readme-stats add a weekly breakdown of languages and editors you've coded in.
Layout tricks
14. Collapsible sections
Keep the page short and hide the detail until someone wants it:
<details>
<summary>π Talks and articles</summary>
- [Scaling WebSockets](https://example.com)
- [Offline-first with IndexedDB](https://example.com)
</details>15. Images that suit light and dark mode
Many people browse GitHub in dark mode. Use a <picture> element to serve a different image for each theme. The Markdown cheat sheet has the snippet.
What to avoid
- A wall of badges. Forty logos says less than ten relevant ones.
- Too many animated images. They slow the page down and compete for attention.
- Outdated information. "Currently learning React (2019)" does more harm than good. Review your README every few months.
- Nothing about your work. Decorations are fine, but visitors came to see what you build.
Get started
Browse ready-made combinations of these ideas in the README gallery, or build your own in the generator. You can import your details from GitHub, pick sections and preview the result in both themes.
π‘ Build a README with a banner, typing headline, tech stack, stats and featured projects in a few clicks. Try it β