Create a tiled montage (or collage) of GitHub Avatar images for use in all hands and other "welcome" or "thank you" slides
This repo contains two tiny bash scripts in the scripts/
directory. One to download avatars via curl
, the other to create the montage via ImageMagick's montage
command.
Here's an example of what the resulting montage looks like using the first 98 GitHub users by user ID:
Of course you can customize the output. See below for details. Don't need to control the output or are looking for something simpler? Check out @jhutchings1's hosted Thank you builder.
- Clone this repo locally and
cd
into the directory - Add a list of GitHub handles (without the
@
) to ahandles.txt
file, one handle per line - Run
script/download
to fetch the avatars - Run
script/create
to create the montage - Use the resulting
montage.png
file in your presentation
To run the scripts, you'll need:
curl
, andimagemagick
Note: You can install both on MacOS with brew bundle
You can customize the output by passing additional arguments to script/create
, e.g., script/create -tile 10x
to force the montage to be 10 images wide. See the ImageMagick montage documentation for a list of available options.
You can also run the script using the provided GitHub Action workflow. This is useful for automating the process or running it without setting up the environment locally.
- Navigate to the "Actions" tab in your GitHub repository.
- Select the "Run Avatar Montage" workflow.
- Click on "Run workflow" and provide the following inputs:
- handles: A comma-separated list of GitHub handles (e.g.,
octocat,github
). - imagemagick_args (optional): Additional arguments for the ImageMagick montage command (e.g.,
-tile 10x
).
- handles: A comma-separated list of GitHub handles (e.g.,
- Click "Run workflow" to execute the script.
The workflow will generate a montage.png
file and upload it as an artifact, which you can download from the workflow run page.
Credit goes to @martinwoodward for his "very quick ruby script to create a bash script that will create a montage" for the idea, and for pointing me towards the ImageMagick montage
command.