#!/usr/bin/env bash

# Get user starred repos list.

# GitHub peronal access token (with restrictions: can read user info only)
# https://docs.github.com/en/rest/guides/getting-started-with-the-rest-api#using-personal-access-tokens=
personal_access_token=
username=

# Get stars count
stars=$(curl -sSI -u ${username}:${token} https://api.github.com/users/${username}/starred?per_page=1 |
    grep -i '^link:' | egrep -o 'page=[0-9]+' | tail -1 | cut -c6-)
# Get pages count
pages=$((stars/100+1))

{
    for page in `seq ${pages}`; do
        curl -sS -u ${username}:${token} \
            "https://api.github.com/users/${username}/starred?per_page=100&page=${page}" |
            jq -r '.[].clone_url'
    done
}
