GitHub README Best Practices: 8 Rules That Got 60k+ Stars (2026)
The 8 README rules behind AFFiNE's 60k+ GitHub stars. Visuals, hook copy, install commands, and the 30-second readability test — with real before/after examples.
GitHub README best practices are the eight choices that help a developer understand, trust, and try a repository within 30 seconds: lead with a specific value proposition, show the product, provide a short quick start, use only meaningful badges, explain core features, compare alternatives honestly, document contribution paths, and keep every example current. This guide applies those rules to the README structure used while growing AFFiNE beyond 60,000 GitHub stars.
| README decision | Recommended standard | Why it matters |
|---|---|---|
| First two lines | Product + audience + outcome | Establishes relevance before scrolling |
| Visual proof | Screenshot or 15–30 second GIF | Shows the product instead of describing it |
| Quick start | Working result in five commands or fewer | Reduces evaluation friction |
| Documentation depth | 500–1,500 words for most applications | Keeps the README useful without replacing /docs |
| Maintenance | Verify commands and screenshots every release | Prevents broken examples from eroding trust |
Why Your README Matters
Your README is your project’s landing page. It’s often the difference between someone starring your repo or bouncing in 3 seconds.
I’m Iris, former cofounder & COO of AFFiNE (60k+ GitHub stars). After helping grow multiple open source projects, I’ve learned that README quality directly correlates with star growth.
| Project | Stars | README Quality |
|---|---|---|
| AFFiNE | 60k+ | Optimized |
| Average OSS | <100 | Minimal |
GitHub README Best Practices
1. Start With a Clear Value Proposition
The first 2 lines should answer: What is this? Why should I care?
# ProjectName
> One-line description of what it does and why it matters
❌ Bad: “A tool for developers” ✅ Good: “Open-source Notion alternative with real-time collaboration — 60k+ stars”
2. Add Visual Proof Immediately
After the title, show don’t tell:
- GIF demo (15-30 seconds max)
- Screenshot of the main interface
- Architecture diagram for technical projects
<div align="center">
<img src="demo.gif" alt="Product Demo" width="600" />
</div>
3. Badges That Matter
Only include badges that build trust:
| Badge Type | Why Include |
|---|---|
| Stars | Social proof |
| License | Legal clarity |
| Build status | Quality signal |
| Last commit | Active maintenance |
Skip: Download counts, coverage %, and vanity metrics.
4. Quick Start in 30 Seconds
Users want to try before they commit. Make it copy-paste simple:
## Quick Start
```bash
npm install your-package
your-package init
That’s it! Open http://localhost:3000 to see it running.
### 5. Feature List as a Table
Tables are scannable. Bullet lists are not.
```markdown
## Features
| Feature | Description |
|:--------|:------------|
| Real-time sync | Collaborate with your team instantly |
| Offline mode | Works without internet |
| Self-hosted | Your data, your servers |
6. The “Why” Section
Explain the problem you’re solving. This builds emotional connection:
## Why ProjectName?
Existing tools are either:
- Too expensive for indie developers
- Too complex for simple use cases
- Not open source
We built ProjectName because [personal story].
7. Clear Documentation Links
Don’t dump everything in the README. Link out:
## Documentation
- [Getting Started](docs/getting-started.md)
- [API Reference](docs/api.md)
- [Contributing](CONTRIBUTING.md)
- [Changelog](CHANGELOG.md)
8. Contribution Invitation
Make it welcoming:
## Contributing
We love contributions! See our [Contributing Guide](CONTRIBUTING.md) to get started.
Not sure where to start? Check issues labeled `good first issue`.
README Template
Here’s a battle-tested template:
<div align="center">
<img src="logo.png" width="120" />
<h1>Project Name</h1>
<p>One-line value proposition</p>
<!-- Badges -->
[](link)
[](link)
</div>
<div align="center">
<img src="demo.gif" width="600" />
</div>
## Quick Start
[30-second setup]
## Features
[Table format]
## Why This Project?
[Problem + Story]
## Documentation
[Links]
## Contributing
[Invitation]
## License
[MIT/Apache/etc]
FAQ: GitHub README
How long should a README be?
500-1500 words is the sweet spot. Long enough to be comprehensive, short enough to be read. Use documentation links for details.
Should I include installation for every platform?
No. Include the most common method (usually npm/pip/brew), then link to detailed installation docs.
What’s the best format for images?
- GIFs for demos (< 5MB)
- PNGs for screenshots
- SVGs for diagrams and logos
Host images in the repo’s /assets folder or use a CDN.
Should I translate my README?
For global reach, yes. Use language links at the top:
**[English](README.md) | [中文](README-zh.md) | [日本語](README-ja.md)**
Common README Mistakes
| Mistake | Fix |
|---|---|
| Wall of text | Use headers, tables, and whitespace |
| No visuals | Add GIF demo or screenshot |
| Complex setup | Simplify to 2-3 commands |
| Missing “why” | Add motivation section |
| Outdated info | Set up CI to check links |
| No contribution guide | Add CONTRIBUTING.md |
README Checklist
□ Clear one-line description
□ Visual demo (GIF/screenshot)
□ Essential badges only
□ Quick start (< 30 seconds)
□ Features table
□ "Why" section with story
□ Documentation links
□ Contributing invitation
□ License
Real Examples
Projects with excellent READMEs:
| Project | Stars | Why It Works |
|---|---|---|
| AFFiNE | 60k+ | Clear value prop, visual demo, feature table |
| Supabase | 70k+ | Instant demo, comparison table |
| Excalidraw | 80k+ | Interactive demo link, minimal text |
Summary
Your README is your project’s first impression. Invest time in:
- Clear value proposition — What and why in 2 lines
- Visual proof — GIF or screenshot immediately
- 30-second quick start — Copy-paste simple
- Scannable structure — Tables over bullet lists
- Emotional connection — Tell your “why”
A great README doesn’t just document — it sells.
Free Resources
- 📚 Open Source Marketing Playbook — How to grow GitHub stars
- 📚 Product Hunt Launch Guide — Launch strategy from 30x #1 winner
Questions? Drop a comment or reach out on Twitter @WeiYipei.
This guide is part of the Gingiris Open Source Playbook — battle-tested strategies from 60k+ GitHub stars.
📚 Related Reading
| Category | Article |
|---|---|
| 📖 | How to Get GitHub Stars |
| 📖 | Developer Marketing Playbook |
| 📖 | 10 Proven GitHub Star Growth Tactics |
| 📖 | 9 GitHub Star Growth Levers (2026) |
More tools → Growth Tools Directory
📚 Read the full series
This article is part of the How to Get More GitHub Stars: The Definitive Guide series. Other guides in the cluster:
- GitHub Star Growth Tactics
- GitHub README Template: 12 Copy-Paste Examples
- Developer Community Directory
Find all 90+ playbooks at gingiris.tools.