Notes on Customizing Your GitHub Profile

My notes from learning how to customize my GitHub profile.

December 9, 2021


I finally got around to making my GitHub profile look less plain. I came across this video on YouTube covering several different customizations. Below are some notes I made for future reference.

Basic Custom Profile

  1. Create a repository that has the same name as your user name
  2. Create a file
    • Link to website

      • Use


    • Maybe Twitter

      • Use

        Twitter Follow

        [![Twitter Follow](](
    • About Me section

    • Contacts info and social media

      • Channel Name | YouTube
      • [<img align="left" alt="Channel Name | YouTube" width="22px" src="[email protected]/icons/youtube.svg" />][youtube_address]
    • Languages and Tools that you work with

      • Houses all of the community-curated content for GitHub Topics and Collections (e.g. icon images)

      • Copy Download link

      • Visual Studio

        explore/visual-studio-code.png at main · github/explore

        • Visual Studio Code
        • [<img align="left" alt="Visual Studio Code" width="26px" src="" />](
    • Can have separate definitions for links

      • [website]:
  3. Push the repository to GitHub.
  4. Make sure the repository is public.

Blog Post Feed

  • Requires a link to an RSS feed.xml file

  • Use GitHub Action


    • In

      # Blog posts
      <!-- BLOG-POST-LIST:START -->
      <!-- BLOG-POST-LIST:END -->
    • Create .github folder

    • Manually Update List

      • Go to<user-name>/<repo-name>/actions/workflows/blog-post-workflow.yml
      • Click on Run workflow drop-down menu
      • Click on Run workflow button

YouTube Channel Feed

  • Same steps as for Blog posts
  • Changes
    • YouTube Channel Feed


      # Youtube Videos
      <!-- YOUTUBE:START -->
      <!-- YOUTUBE:END -->
    • .github/workflows/youtube-workflow.yml

      name: Latest YouTube video workflow
        schedule: # Run workflow automatically
          - cron: '0 * * * *' # Runs every hour, on the hour
        workflow_dispatch: # Run workflow manually (without waiting for the cron to be called), through the Github Actions Workflow page directly
          name: Update this repo's README with latest blog posts
          runs-on: ubuntu-latest
            - name: Checkout
              uses: actions/[email protected]
            - name: Pull in personal blog posts
              uses: gautamkrishnar/[email protected]
                          comment_tag_name: "YOUTUBE"
                feed_list: ""

Recent Activity Feed

  • Use GitHub Action
  • Changes

      # Recent GitHub Activity
    • .github/workflows/update-readme.yml

      name: GitHub Activity
          - cron: '*/30 * * * *'
          runs-on: ubuntu-latest
          name: Update this repo's README with recent activity
            - uses: actions/[email protected]
            - uses: jamesgeorge007/[email protected]
                GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

GitHub Stats

  • Use GitHub Action
  • Add to
    • Default

      ![My GitHub stats](<user-name>)
    • Hide Individual Stats

      ![My GitHub stats](<user-name>&hide=contribs,prs)
      • Options: &hide=stars,commits,prs,issues,contribs
    • Include Private Contributions

      ![My GitHub stats](<user-name>&count_private=true)
    • Show Icons

      ![My GitHub stats](<user-name>&show_icons=true)
    • Hide Border

      ![My GitHub stats](<user-name>&hide_border=true)
    • Themes

      ![My GitHub stats](<user-name>&show_icons=true&theme=radical)
    • Customize

      GitHub - anuraghazra/github-readme-stats: Dynamically generated stats for your github readmes

    • Add Most Used Languages

      • markdown ![Top Langs](<user-name>&show_icons=true&hide_border=true)