The Story
Behind GitCity
Who coined "GitHub as a city," why GitCity exists, and what makes it genuinely different — told honestly, with full credit to prior work.
Where the concept comes from
No one person invented the idea of rendering GitHub contributions as a 3D city. It has a clear, traceable lineage going back to GitHub itself.
What problem GitCity actually solves
Discovering thegitcity.com mid-build clarified what GitCity should not be. The goals diverged immediately:
| Problem | GitCity's answer |
|---|---|
| No README embeds for 3D skylines | /api/svg?u=USERNAME — one-line Markdown embed |
| All tools require accounts or tokens | Username only — no OAuth, no PAT, no session |
| No tool lets you inhabit your own data | Driveable Three.js city built from real commit days |
| Social tools mix your data with others | Your city only contains your history. Nobody else. |
| No all-years history | Fetches every year since account creation |
What was actually built
Three distinct views
Isometric 3D Skyline — rendered in SVG (not canvas). The SVG choice was deliberate: it makes the same render serveable as a static API response, enabling README embeds. 6 themes, year/rolling filters, hover tooltips.
Bird's Eye Heatmap — classic GitHub-style grid using the same data pipeline. Good for comparing years side by side.
City Simulation — the genuinely novel part. Your commit data becomes the city geometry. Days with commits become buildings (height = commit count). Days without commits become roads.
Systems built from scratch for the simulation
None of these systems exist in honzaap's GithubCity or thegitcity.com.
The embed API
[](https://gitcity.natrajx.in/USERNAME)
Single GET request. Themed SVG. Cacheable. Works in any Markdown renderer including GitHub READMEs. No equivalent exists in any prior "GitHub as city" project.
Side-by-side comparison
| Feature | GitCity | honzaap/GithubCity | thegitcity.com |
|---|---|---|---|
| Building represents | One day of YOUR commits | One day of commits | One GitHub user |
| Driveable simulation | ✅ Yes | ❌ No | ❌ No |
| README SVG embed API | ✅ Yes | ❌ No | ❌ No |
| Account required | ❌ No | ❌ No | ✅ Yes |
| Social network | ❌ No | ❌ No | ✅ Yes |
| All-years history | ✅ Yes | ❌ No | ❌ No |
| AI traffic + pedestrians | ✅ Yes | ❌ No | ❌ No |
| Weather system | ✅ Yes | ❌ No | ❌ No |
| OG image generation | ✅ Yes | ❌ No | ❌ No |
| License | MIT — do anything | MIT | AGPL-3.0 |
| Monetisation | Free | Free | Paid items ($1–3) |
On the name overlap
The name "GitCity" overlaps with bentolor's older Kotlin VR project and sounds similar to thegitcity.com. That was a mistake — a distinct name would have been smarter.
The product concept is defensible. The name choice was not careful enough. This document, HISTORY.md, and ACKNOWLEDGEMENTS.md exist to make the distinction clear for anyone who encounters the confusion.
Credits
Conceptual lineage
GitHub, Inc. — originated the skyline metaphor (2020)
Jan Hannemann (honzaap) — first contributions-as-city Three.js implementation
(2022)
Samuel Rizzon — social-network angle that clarified what GitCity should not be
bentolor — early "git + city" naming (different concept)
Open source dependencies
Three.js (MIT) · React (MIT) · Vite (MIT) · react-helmet-async (MIT) · Vercel · GitHub GraphQL API