DEV Community

Cover image for 🚀 5 PRO Tips for an Unbeatable GitHub README! 🥊

🚀 5 PRO Tips for an Unbeatable GitHub README! 🥊

Bap on November 30, 2023

Hi friends 👋 Today, let's look at how to write a KILLER GitHub README file. The README is the first touch point with anyone new to your repo. ...
Collapse
 
daveparr profile image
Dave Parr •

Very much agree.

My partcular current favourite is:

Write an introduction
A summary explaining the purpose and target audience of your project.

I've been handling readmes en masse for my current pet project

GitHub logo DaveParr / starpilot

Use your GitHub stars for great good!

Starpilot is like copilot, but for GitHub stars.

I've been starring repos for years thinking "This will definitely be useful later".

However I never really went back to them.

Starpilot is a retrival augmented generation CLI tool for rediscovering your GitHub stars.

Starpilot helps this problem by allowing you to rediscover GitHub repos you had previously starred that are relevant to your current project.

Here's some more details about the motivation for and state of the project.

Installation

experimental

This project is in early development and is not yet available on PyPi

  1. Fork repo
  2. Clone repo
  3. cd starpilot
  4. poetry install

You will also need to have downloaded models/mistral-7b-openorca.Q4_0.gguf from GPT4All, or an alternative supported by the Model class and included it in the models directory.

You will also potentially need Pandoc installed on your computer if your starred repos contain a rst formatted Readme that you want to load…

I've noticed 2 things about README.* which has been particuarly irritating for the project:

  1. Many repos approach the read me as 'the document that tells a developer how to set up a development environment', and I agree that is a big part of the document, but definately not it's only part.
  2. GitHub supports a few 'exotic' standards for readmes, including Python RST. FWIW it's worth I'm relatively pro that generally, but support for these less standard standards does mean for projects like StarPilot that handle README documents as part of the core software, it does add some interesting complexity, and I'm sure for a few people will be the edge cases that throw errors in using star pilot currently.
Collapse
 
fernandezbaptiste profile image
Bap •

Mhmm super interesting insight. True, many developers look at it too much as "how to set things up". The point number 2 is one I was not aware of these "exotic" standards lol - thanks so much for sharing it here 🙏

Collapse
 
nathan_tarbert profile image
Nathan Tarbert •

Good stuff!
I'd also add that you can add responsive images based on user preference in MD as well.

Collapse
 
fernandezbaptiste profile image
Bap •

Pretty cool 👀
Thanks for sharing!

Collapse
 
nathan_tarbert profile image
Nathan Tarbert •

You're welcome!

Collapse
 
Sloan, the sloth mascot
Comment deleted
Collapse
 
fernandezbaptiste profile image
Bap •

Ouhhh always love checking these out, thanks a lot Hossein! 🦾

Collapse
 
fmerian profile image
fmerian •

great read, @fernandezbaptiste!

FWIW I recently stumbled upon Repobeat by Axiom, an elegant dashboard that shows your open-source project’s health.

if you value open metrics and transparency, you HAVE to add it to your README file.

Repobeat by Axiom

Collapse
 
fernandezbaptiste profile image
Bap •

That looks really cool flo! Thanks for sharing that with me :)

Collapse
 
mlkrsrc profile image
Mustafa ilker Sarac •

Great article! If anyone is into creating more custom badges can check out my article about that; dev.to/mlkrsrc/how-to-make-custom-...

Collapse
 
fernandezbaptiste profile image
Bap •

Thanks Mustafa, I just liked your article 🙂

Collapse
 
srbhr profile image
𝚂𝚊𝚞𝚛𝚊𝚋𝚑 𝚁𝚊𝚒 •

Nice tips!! Thanks for this

Collapse
 
fernandezbaptiste profile image
Bap •

You are very welcome! Glad you enjoyed it :)

Collapse
 
srbhr profile image
𝚂𝚊𝚞𝚛𝚊𝚋𝚑 𝚁𝚊𝚒 •

Yes, my readme after this post:

Image description

Thread Thread
 
fernandezbaptiste profile image
Bap •

LOL

Collapse
 
kubernaut profile image
Louis Weston •

Cool summary thanks, great ideas for us to improve our README!

Collapse
 
fernandezbaptiste profile image
Bap •

Thanks for the kind comment! Glad it helped 🤓

Collapse
 
matijasos profile image
Matija Sosic •

Nice and comprehensive guide! Do you have some favorite Readmes you can share?

Collapse
 
fernandezbaptiste profile image
Bap •

Thanks for this! I don't think I have a favourite per se but I do think the ones from Novu (github.com/novuhq/novu) or Hoppscotch (github.com/hoppscotch/hoppscotch) are really nice.

Collapse
 
nevodavid profile image
Nevo David •

Great tips for improving READMEs :)

Collapse
 
fernandezbaptiste profile image
Bap •

Thanks a lot Nevo - always means a lot coming from you 💛

Collapse
 
lucas2vries profile image
Lucas de Vries •

Great tips ! Tried to apply them on my open-source project metric observability project 🤗

Collapse
 
fernandezbaptiste profile image
Bap •

I really like it, looks super neat 👌

Collapse
 
fernandezbaptiste profile image
Bap •

Happy it helped!

Collapse
 
kiselitza profile image
aldin •

Ah yes, shields.io for the badges! :D