How to create a GitHub Profile README

We launched GitHub Profile READMEs last year and developers have been loving this feature.

When we launched the Profile README, we put out a short clip letting you know how to create yours.

Since then, I'm constantly getting asked on my live streams for templates, tutorials, and ideas on setting up your profile. So I thought I'd write down some ideas, as well as snippets of code you can use.

Step 1. Creating your Profile README

Before we jump into the steps on how to create a Profile README, check out mine for inspiration:

Hey everyone, I'm Mish Manners®™, AKA the Hackathon Queen®™ 👋

Everyday, I get to create awesome experiences and engage with the vibrant GitHub developer community. I've run many hackathons, and am an accomplished MC, speaker, and facilitator 🎤. You'll often catch me at an event or speaking on stage! Well, not so much at the moment, but you'll probably find me on a live stream instead!

Find me all around the web:

I'm a gamer too, so you might find me on:

Watch, read, and catch up on content:

Some Fun Facts about me:

I've founded a few companies in the past. I love playing video games which you'll find over on my Twitch Channel. On my channel…

I'll be sharing ideas and code snippets from my profile.

To setup your profile, you'll first need to create a special README repo:

  1. Log into GitHub and go to your profile
  2. Click on "Repositories"
  3. Click "New"
  4. Make your repositories name the same as your username
  5. Ensure your repo is set to "Public"
  6. Check the box that says "Add a README file"
  7. Click "Create Repository"

You should have a cool green box that says that repo "is a special repository".

Now it's time to customise and personalise your Profile README.

Step 2. Customising your Profile

Firstly, you'll want to think about the types of things you want in your profile. Do you want gifs or images? What kind of information do you want to showcase? Do you want to talk about yourself, your projects, or your work?

It's often a good idea to map out a bit of a plan before you jump into creating your profile - even if that plan is only in your head! 😏

Adding images and gifs

Images and gifs are a great way to embed some flair into your profile. They are also super easy to add. You can now drag and drop a gif or image directly into markdown.

If you'd like a little more control over your image however, use this snippet of code:

<a href="URL_REDIRECT" target="blank"><img align="center" src="URL_TO_YOUR_IMAGE" height="100" /></a>

Here's what each of the elements do:

  • a href allows you to link to any URL. If you don't want to link to anything, you can remove the href if you like, or just leave the URL blank and you can come back to it later.
  • target="blank" means the URL you linked to above will open in a new tab.
  • img align="center" will make your image justified to the center. You can use "left" or "right" too.
  • src is the URL where your image can be found. You can make this a public URL, but I highly recommend uploading your image to GitHub as you can guarantee your image will always live at that URL.
  • height is the height of your image. You can also use "width". The height or width is useful for ensuring all your images have the same dimensions.

Copy and paste the code snippet above and add in the URL to your image or gif. Now you have some cool images on your profile.

Where to find social icons

Speaking of cool images. You might have noticed a lot of people have some pretty slick looking social icons on their profile. Mine for example has a bunch of sleek social media and gaming icons.

Where can you find these? There are a couple of places to look:

  • Simple Icons are a really good place to start. They have hundreds of free vector icons and they are always updating them. Plus it's all open source!
  • Flaticon has a lot more coloured icons to choose from. There are various artists here so you'll find that not everything has the same style or is 'official'. Since these are made by artists, you'll need to credit the creator of the icon, unless you pay a premium.
  • Icons8 is similar to Flaticon. Again, if you are using artist created icons, you'll need to credit the designer.
  • Wikimedia Commons is great if you're looking for the official icons, free of charge. They have thousands of free, official logos that are part of creative commons. For example this is the search result for "Xbox logo".

Adding GitHub stats

Okay so you have some awesome pictures, links, and social media icons. But what about all those cool GitHub charts you might have seen floating around?

These are really easy to setup thanks to the open source people who created them. Firstly, there's the GitHub README Stats by Anurag Hazra.

GitHub logo anuraghazra / github-readme-stats

⚡ Dynamically generated stats for your github readmes

GitHub Readme Stats

GitHub Readme Stats

Get dynamically generated GitHub stats on your readmes!

Tests Passing Issues GitHub pull requests

View Demo · Report Bug · Request Feature

Français · 简体中文 · Español · Deutsch · 日本語 · Português Brasileiro · Italiano · 한국어 Nederlands नेपाली . Türkçe

Love the project? Please consider donating to help it improve!

Give india logo

Are you considering to support the project by donating to me? Please DON'T!!

Instead, Help India fight 2nd deadly wave of COVID,
Thousands of people are dying in India for lack of Oxygen & COVID related necessary infrastructure.

Visit https://indiafightscorona.giveindia.org and make a small donation to help us fight covid and overcome this crisis.
Your small help goes a long way. ❤️

Features

GitHub Stats

The README contains lots of information on setting up the stats, how to display them, and what themes are available. You can choose to use GitHub stats, pins, top languages, and daily stats. For mine, I added in the src to control the width of the image:

<img src="https://github-readme-stats.vercel.app/api?username=YOUR_USERNAME&show_icons=true&theme=ADD_THEME_HERE" width="400">

If you want to add the GitHub streak to your profile, then head on over to GitHub README Streak Stats.

You can put your username directly into this website and you'll receive the code snippet to add to your profile. Go and check out the repo for more info on how to customise this one.

GitHub logo DenverCoder1 / github-readme-streak-stats

🔥 Stay motivated and show off your contribution streak! 🌟 Display your total contributions, current streak, and longest streak on your GitHub profile README

Github Readme Streak Stats

Display your total contributions, current streak
and longest streak on your GitHub profile README

Quick setup

  1. Copy-paste the markdown below into your GitHub profile README
  2. Replace the value after ?user= with your GitHub username
[![GitHub Streak](https://github-readme-streak-stats.herokuapp.com/?user=DenverCoder1)](https://git.io/streak-stats)
Enter fullscreen mode Exit fullscreen mode

Note: See below for information about deploying the app on your own

Demo Site

Here you can customize your Streak Stats card with a live preview.

http://github-readme-streak-stats.herokuapp.com/demo/

Demo Site

🖌 Themes

To enable a theme, append &theme= followed by the theme name to the end of the source url:

[![GitHub Streak](https://github-readme-streak-stats.herokuapp.com/?user=DenverCoder1&theme=dark)](https://git.io/streak-stats)
Enter fullscreen mode Exit fullscreen mode
Theme Preview
default default
dark dark
highcontrast highcontrast
More themes! 🎨 See a list of all available themes

If you have come up with a new theme you'd like to share with others, open an issue to add it!

🔧 Options

The user field is the only required option. All other fields are optional.

If the theme parameter…

Adding your GitHub Skyline

Lots of people have seen this on my GitHub profile and have asked how to get it:

Head over to the GitHub Skyline page, and enter your username and select the year. If you like, turn off the UI by hitting the eye in the bottom right corner: eyes

Then use your favourite gif recorder to grab a short screen capture of your GitHub Skyline. If you don't have a favourite, check out my article on using ScreenToGif:

Other elements

There are a lot of really cool tutorials out there on customising profiles. This one from Supritha has a lot of fun ideas in it. You can search around for more awesome ideas. You'll find posts here on DEV, YouTube, Twitter, and more.

Another really cool way to find what to use on your profile is simply by browsing GitHub. Look around at other people's profiles. If you see something you like, check out their README file and see how they created it. There are so many creative things you can do, you just need to get started. Then you can continue adding amazing elements once you find them.

If you liked this article, don't forget to read up on last week's tutorial. I did a short write up on how to add Actions to your profile.

You also might like to brush up on some of the GitHub-Flavoured Markdown changes I dove into a few weeks back:

21