How I 3D-Printed My GitHub Contribution Skyline for 2024
Dec 16, 2024
3 min read
Turn your GitHub commit history into a tangible 3D masterpiece with the GitHub Skyline CLI extension
Introduction
As a developer, your GitHub contributions form a unique story of your coding journey. What if you could take that story off the screen and into your hands? Enter the GitHub Skyline CLI extension, a tool that transforms your GitHub contribution graph into a 3D-printable model. Released just yesterday, this new feature allows you to visualize your coding history in a whole new way. I decided to print my 2024 commits using the generated STL file — and it turned out great!
In this post, I’ll walk you through my experience using the GitHub Skyline CLI extension, share some tips on printing your model, and offer a few recommendations to improve the workflow — like the ability to specify your STL output location. By the end, you’ll have all the insights you need to create and 3D-print your own GitHub Skyline for the year.
Why 3D Print Your GitHub Contributions?
Visual Achievement: Seeing your contributions as a physical skyline is incredibly satisfying. It’s a great conversation starter and a personal reminder to keep pushing your coding skills.
Yearly Motivation: Creating an annual model encourages consistent commits, open-source contributions, and maintaining a steady coding habit.
Unique Décor: A GitHub Skyline is more than just a tech toy — it’s a piece of personal art that represents your growth as a developer.
Getting Started: Tools & Requirements
GitHub CLI: Make sure you have the GitHub CLI installed.
GitHub Skyline CLI Extension: The official Skyline extension for GitHub CLI.
3D Printer (or 3D Printing Service): You’ll need a 3D printer or access to a service that can print your STL file.
A GitHub Account: Ensure you’re signed in to the GitHub CLI with your GitHub account to access your contribution data.
Step-by-Step Instructions
1. Install GitHub CLI (if you haven’t already):
macOS:
brew install gh
Windows (with Scoop):
scoop install gh
Linux:
Follow instructions from the GitHub CLI docs.
2. Install the GitHub Skyline Extension:
gh extension install github/gh-skyline
3. Generate Your Skyline for 2024:
gh skyline --year 2024
This command retrieves your GitHub contribution data for 2024 and generates both an ASCII art preview and an STL file for 3D printing.
For Multiple Years: If you want a longer-term view, specify a year range. However, note that if you’ve only been committing for a few years, a shorter range might look more polished.
gh skyline --user your-username --year 2022-2024
(Recommended) Specify STL Output Location: Currently, the CLI saves the STL file in a default location. I’d love to see a feature that allows users to specify their desired output directory, like so:
gh skyline --year 2024 --output /path/to/save/your-skyline.stl
Though this feature isn’t live yet, it’s on my personal wish list for improved flexibility.
3D Printing Your GitHub Skyline
Check the STL File: Once generated, you can inspect the STL file in a 3D viewer or directly on GitHub if you upload it. Ensure the model looks correct and is ready for slicing.
Slice Your Model: Use your favorite slicer (e.g., PrusaSlicer, Cura) to prepare the model for printing.
Layer Height: 0.2 mm is a good starting point for a balance of quality and speed.
Infill: 15–20% is often enough since the skyline doesn’t need extreme strength.
Supports: Most skylines are simple block shapes and may not need supports but check if there are overhangs.
Print Your Skyline: Send the sliced G-code to your 3D printer and wait for it to materialize. Watching your GitHub history emerge layer by layer is strangely mesmerizing.
Finishing Touches: Once printed, you can sand any rough edges, paint it, or even mount it on a small stand. Don’t forget to snap a picture and share it online!
Tips for a Better Skyline:
Consistent Contributions: The more consistent and frequent your contributions, the more dynamic your skyline will appear.
Year-Over-Year Comparisons: Reprint your skyline every year to visualize how your commitment to coding has evolved.
Share & Inspire: Post your skyline on social media with the hashtag #GitHubSkyline. Your creation might inspire others to start coding more and sharing their progress.
Conclusion
3D-printing your GitHub Skyline is a unique and exciting way to celebrate your coding journey. Even with just three years of commits under my belt, seeing my progress turned into a physical sculpture feels incredibly rewarding. As I continue to code and contribute, I look forward to printing a new skyline each year, creating a series of artifacts that track my growth as a developer.
If you’re ready to bring your commit history into the real world, give the GitHub Skyline CLI extension a try. And if you’re listening, GitHub team, I’d love the option to specify the STL file output directory — just a small improvement that would make this process even more seamless.
Happy coding, and happy printing!