iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
Skyline turns your GitHub contribution history into a terminal cityscape or an SVG you can place in a profile README. Install the Go command-line tool, authenticate it with a GitHub token, and run it with your username. The result is a playful picture of activity—not a score of code quality or impact.
How Skyline turns contributions into a city
Skyline maps each week to a building and each of the seven days to a window. A day with no contributions stays dark; active days light up, with color intensity reflecting GitHub’s four contribution levels. Building height uses a logarithmic scale, which helps keep an unusually busy week from making the rest of the skyline look flat. The record week gets an antenna, and month labels appear below the buildings.
The idea is simple: “Each week becomes a building. Each day becomes a window.” — Jessica Doering, DEV Community.
Skyline can render in the terminal or save an SVG. Its decorative stars and SVG flicker are deterministic for the same contribution data, so the decoration does not randomly change between runs. The project is open source under the Apache-2.0 license.
#1 Best Overall
Install Skyline and render your contribution history
The project documentation lists Go 1.25 or newer and a GitHub token as requirements. Skyline checks GITHUB_TOKEN, then GH_TOKEN, then tries gh auth token; the last option may work if you are already signed in with GitHub CLI.
-
Install the latest published version with Go:
go install github.com/pinkpixel-dev/skyline@latest -
Run it with your GitHub username:
skyline your-username
The documented default displays 53 recent weeks across 106 columns. You can adjust the number of weeks, maximum building height, palette, or output format with flags:
skyline your-username -weeks 30 -height 10 -theme synthwave -svg skyline.svg
This example asks for 30 weeks, caps building height at 10, selects the synthwave theme, and writes an SVG file instead of terminal output. The project documents 12 themes:
Recommended Free Tools
Rank #2
neon(default),synthwave,matrix, andamberice,sunset,toxic, andvaporcrimson,mono,prism, andrainbow
These flags, defaults, and theme names reflect the project documentation available at the time of writing and may change as Skyline develops. The terminal needs truecolor support for the full palette; without it, Lip Gloss downsamples colors.
Put an automatically updated skyline in a profile README
GitHub displays a profile README from a repository named after the account username. Skyline’s example workflow regenerates the SVG on a schedule and publishes it to a separate output branch. The README can then embed the raw SVG from that branch.
-
Create or use the repository named after your GitHub username, then adapt Skyline’s example GitHub Actions workflow to your account.
-
Run the workflow manually once so it can create the
outputbranch.Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchPC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy. -
Add an image reference to the profile README, replacing both instances of
your-usernamewith your account name:
The project’s example schedule runs nightly at 03:17 UTC, using the cron expression 17 3 * * *. That schedule is an example, not a requirement. The workflow may need adjustments to match your repository’s Actions permissions and token settings; consult GitHub’s current Actions permission controls if it cannot write the output branch.
What to check if the output looks wrong
The skyline is missing activity
The project author suggests trying a classic personal access token with read:user, stored as a repository secret named SKYLINE_TOKEN, if the generated result looks emptier than the activity shown when logged in. This is the project’s suggested workaround, not independent confirmation of GitHub’s current token behavior. Review the project workflow to see which secret it reads before changing authentication.
Terminal colors look muted
Full palette rendering depends on truecolor support in the terminal. If that is unavailable, Lip Gloss downsamples the colors.
SVG characters look different
The SVG uses text glyphs and is displayed as an image with a system monospace font. A minimal font may substitute some glyphs, so the city can look different across systems.
Best Value
Animation does not play
Skyline’s SVG animations turn off for viewers whose system has prefers-reduced-motion enabled. That respects the viewer’s motion preference; a still image is expected in that case.
How to interpret the result
A tall building means a busier week according to Skyline’s visualization rules. It does not establish that the work was more difficult, useful, or high quality. Contribution counts describe recorded activity, not impact, and the skyline is best treated as a personal visual flourish rather than a performance measure.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

