Introduction

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 README.md file
    • Link to website
      • Use https://shields.io

        Website

          [![Website](https://img.shields.io/website?label=christianjmills.com&style=for-the-badge&url=https://christianjmills.com)](https://christianjmills.com)
        
    • Maybe Twitter
      • Use https://shields.io

        Twitter Follow

          [![Twitter Follow](https://img.shields.io/twitter/follow/cdotjdotmills?color=1DA1F2&logo=twitter&style=for-the-badge)](https://twitter.com/intent/follow?original_referer=https://github.com/cj-mills&screen_name=cdotjdotmills)
        
    • About Me section

    • Contacts info and social media
      • Channel Name | YouTube
      • [<img align="left" alt="Channel Name | YouTube" width="22px" src="https://cdn.jsdelivr.net/npm/[email protected]/icons/youtube.svg" />][youtube_address]
    • Languages and Tools that you work with
      • https://github.com/github/explore: 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="https://github.com/github/explore/raw/main/topics/visual-studio-code/visual-studio-code.png" />](https://code.visualstudio.com)
    • Can have separate definitions for links
      • [website]: https://christianjmills.com
  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

    • https://github.com/gautamkrishnar/blog-post-workflow

    • In README.md

        # Blog posts
        <!-- BLOG-POST-LIST:START -->
        <!-- BLOG-POST-LIST:END -->
      
    • Create .github folder
    • Manually Update List
      • Go to https://github.com/<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
      • https://www.youtube.com/feeds/videos.xml?channel_id=<channel-id>
    • REAME.md

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

        name: Latest YouTube video workflow
        on:
          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
              
        jobs:
          update-readme-with-blog:
            name: Update this repo's README with latest blog posts
            runs-on: ubuntu-latest
            steps:
              - name: Checkout
                uses: actions/[email protected]
              - name: Pull in personal blog posts
                uses: gautamkrishnar/[email protected]
                with:
        					comment_tag_name: "YOUTUBE"
                  feed_list: "https://www.youtube.com/feeds/videos.xml?channel_id=UCDOTuz8In9mVs44WZMbYNGg"
      

Recent Activity Feed

  • Use GitHub Action
    • https://github.com/jamesgeorge007/github-activity-readme
  • Changes
    • README.md

        # Recent GitHub Activity
        <!--START_SECTION:activity-->
      
    • .github/workflows/update-readme.yml

        name: GitHub Activity
              
        on:
          schedule:
            - cron: '*/30 * * * *'
          workflow_dispatch:
              
        jobs:
          build:
            runs-on: ubuntu-latest
            name: Update this repo's README with recent activity
              
            steps:
              - uses: actions/[email protected]
              - uses: jamesgeorge007/[email protected]
                env:
                  GITHUB_TOKEN: $
      

GitHub Stats

  • Use GitHub Action
    • https://github.com/anuraghazra/github-readme-stats
  • Add to README.md
    • Default

        ![My GitHub stats](https://github-readme-stats.vercel.app/api?username=<user-name>)
      
    • Hide Individual Stats

        ![My GitHub stats](https://github-readme-stats.vercel.app/api?username=<user-name>&hide=contribs,prs)
      
      • Options: &hide=stars,commits,prs,issues,contribs
    • Include Private Contributions

        ![My GitHub stats](https://github-readme-stats.vercel.app/api?username=<user-name>&count_private=true)
      
    • Show Icons

        ![My GitHub stats](https://github-readme-stats.vercel.app/api?username=<user-name>&show_icons=true)
      
    • Hide Border

        ![My GitHub stats](https://github-readme-stats.vercel.app/api?username=<user-name>&hide_border=true)
      
    • Themes

        ![My GitHub stats](https://github-readme-stats.vercel.app/api?username=<user-name>&show_icons=true&theme=radical)
      
    • Customize

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

    • Add Most Used Languages

      •   ![Top Langs](https://github-readme-stats.vercel.app/api/top-langs/?username=<user-name>&show_icons=true&hide_border=true)
        

References: