Generate a calendar from a JSON file.
| Option | Description | Default |
|---|---|---|
| -k KEY | Key of the date | date |
| -c KEY | Key of the counter | |
| -d | First day of the week | 1 (Monday) |
| -i FILE | Path to the JSON file | data.json |
| -o FILE | Path to the output file | out.svg |
| -q | Quiet mode | false |
| -h | Hexa color (alpha is optional) | 00C8C8FF |
There are different possible usages depending on your JSON file.
JSON file with dates
[
{
"date": "2022-11-06",
},
{
"date": "2022-11-07",
},
]You will need to specify the key of the date and the key of the counter
go run github.com/Its-Just-Nans/go-calendar -k dateJSON file with a counter
[
{
"date": "2022-11-06",
"num": 9
},
{
"date": "2022-11-06",
"num": 1
},
]You will need to specify the key of the date and the key of the counter
go run github.com/Its-Just-Nans/go-calendar -k date -c numGenerate calendar from Github contributions
Using gh api and jq, you can get your contributions from Github with
gh api graphql -F owner='Its-Just-Nans' -f query='
query( $owner: String!) {
user(login: $owner) {
contributionsCollection {
contributionCalendar {
totalContributions
weeks {
contributionDays {
contributionCount
weekday
date
}
}
}
}
}}' | jq '[.data.user.contributionsCollection.contributionCalendar.weeks | .[].contributionDays |.[] | {date: (.date), num:(.contributionCount)}]' > out.jsonThen you can generate the calendar with
go run github.com/Its-Just-Nans/go-calendar -k date -c num -i out.json -o contributions.svg