In this post, I will share how to customize your GitHub profile page, and you can find the end result here.

GitHub allows us to show README content on top of our profile page:{user_name}.

Create a special repo

First, we need to create a special repo that has the same name as our user name. For example, my GitHub name is jdhao, so the new repo name will be jdhao.

Create a README

In the new repo, add a file named All content inside this file will be rendered and displayed on your profile.


Show latest blog post

We can use this blog-post-workflow GitHub action to update the README with the latest post from our blog site.

First, edit the and add the following section:

# Latest blog posts


Then in the personal repo, create folder .github/workflows. In this folder, add blog-post-workflow.yml:

name: Latest blog post workflow
  schedule: # Run workflow automatically
    - cron: '30 23 * * *' # Runs every day on 23:30
  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/checkout@v2
      - name: Pull in my blog posts
        uses: gautamkrishnar/blog-post-workflow@master
          feed_list: ""

This action will be run periodically (every day on 23:30). Check here for the GitHub action cron syntax.

Note the feed link for feed_list field should be replaced with your own blog feed.

Push the changes to your personal repo. To trigger the action manually, go to Actions, click the workflow, and then click Run workflow.

This action will update your README automatically.

Show GitHub stats

With the help of project github-readme-stats, we can display our GitHub stats easily:

<p align="center">
<img src="" width="800">

The result is: