[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-74783":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":14,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":19,"compositeScore":20,"rankGlobal":10,"rankLanguage":10,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":22,"hasPages":22,"topics":24,"createdAt":10,"pushedAt":10,"updatedAt":36,"readmeContent":37,"aiSummary":38,"trendingCount":16,"starSnapshotCount":16,"syncStatus":39,"lastSyncTime":40,"discoverSource":41},74783,"git-city","srizzon\u002Fgit-city","srizzon","Your GitHub profile as a 3D pixel art building in an interactive city","https:\u002F\u002Fthegitcity.com",null,"TypeScript",5635,279,18,6,0,38,174,54,112.34,"GNU Affero General Public License v3.0",false,"main",[25,26,27,28,29,30,31,32,33,34,35],"3d","github","nextjs","pixel-art","react","react-three-fiber","supabase","three-js","threejs","typescript","visualization","2026-06-12 04:01:15","\u003Ch1 align=\"center\">Git City\u003C\u002Fh1>\n\n\u003Cp align=\"center\">\n  \u003Cstrong>Your GitHub profile as a 3D pixel art building in an interactive city.\u003C\u002Fstrong>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fthegitcity.com\">thegitcity.com\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"public\u002Fog-image.png\" alt=\"Git City — Where Code Builds Cities\" width=\"800\" \u002F>\n\u003C\u002Fp>\n\n---\n\n## What is Git City?\n\nGit City transforms every GitHub profile into a unique pixel art building. The more you contribute, the taller your building grows. Explore an interactive 3D city, fly between buildings, and discover developers from around the world.\n\n## Features\n\n- **3D Pixel Art Buildings** — Each GitHub user becomes a building with height based on contributions, width based on repos, and lit windows representing activity\n- **Free Flight Mode** — Fly through the city with smooth camera controls, visit any building, and explore the skyline\n- **Profile Pages** — Dedicated pages for each developer with stats, achievements, and top repositories\n- **Achievement System** — Unlock achievements based on contributions, stars, repos, referrals, and more\n- **Building Customization** — Claim your building and customize it with items from the shop (crowns, auras, roof effects, face decorations)\n- **Social Features** — Send kudos, gift items to other developers, refer friends, and see a live activity feed\n- **Compare Mode** — Put two developers side by side and compare their buildings and stats\n- **Share Cards** — Download shareable image cards of your profile in landscape or stories format\n\n\u003C!-- TODO: Add screenshots -->\n\u003C!-- ![City Overview](assets\u002Fscreenshot-city.png) -->\n\u003C!-- ![Profile Page](assets\u002Fscreenshot-profile.png) -->\n\u003C!-- ![Compare Mode](assets\u002Fscreenshot-compare.png) -->\n\n## How Buildings Work\n\n| Metric         | Affects           | Example                                |\n|----------------|-------------------|----------------------------------------|\n| Contributions  | Building height   | 1,000 commits → taller building        |\n| Public repos   | Building width    | More repos → wider base                |\n| Stars          | Window brightness | More stars → more lit windows           |\n| Activity       | Window pattern    | Recent activity → distinct glow pattern |\n\nBuildings are rendered with instanced meshes and a LOD (Level of Detail) system for performance. Close buildings show full detail with animated windows; distant buildings use simplified geometry.\n\n## Tech Stack\n\n- **Framework:** [Next.js](https:\u002F\u002Fnextjs.org) 16 (App Router, Turbopack)\n- **3D Engine:** [Three.js](https:\u002F\u002Fthreejs.org) via [@react-three\u002Ffiber](https:\u002F\u002Fgithub.com\u002Fpmndrs\u002Freact-three-fiber) + [drei](https:\u002F\u002Fgithub.com\u002Fpmndrs\u002Fdrei)\n- **Database & Auth:** [Supabase](https:\u002F\u002Fsupabase.com) (PostgreSQL, GitHub OAuth, Row Level Security)\n- **Payments:** [Stripe](https:\u002F\u002Fstripe.com)\n- **Styling:** [Tailwind CSS](https:\u002F\u002Ftailwindcss.com) v4 with pixel font (Silkscreen)\n- **Hosting:** [Vercel](https:\u002F\u002Fvercel.com)\n\n## Getting Started\n\n```bash\n# Clone the repo\ngit clone https:\u002F\u002Fgithub.com\u002Fsrizzon\u002Fgit-city.git\ncd git-city\n\n# Install dependencies\nnpm install\n\n# Set up environment variables\n\n# Linux \u002F macOS\ncp .env.example .env.local\n\n# Windows (Command Prompt)\ncopy .env.example .env.local\n\n# Windows (PowerShell)\nCopy-Item .env.example .env.local\n\n# Fill in your environment variables\n\n# Run the dev server\nnpm run dev\n```\n\nOpen [http:\u002F\u002Flocalhost:3001](http:\u002F\u002Flocalhost:3001) to see the city.\n\n## Environment Setup\n\nAfter copying `.env.example` to `.env.local`, fill in these values:\n\n- `NEXT_PUBLIC_SUPABASE_URL`, `NEXT_PUBLIC_SUPABASE_ANON_KEY`, `SUPABASE_SERVICE_ROLE_KEY`\n- `GITHUB_TOKEN`\n- `ADMIN_GITHUB_LOGINS` if you want access to `\u002Fadmin\u002Fads`\n\n### Where to find the Supabase values\n\nOpen your Supabase project dashboard, then go to `Project Settings -> API`.\n\n- `NEXT_PUBLIC_SUPABASE_URL`: your project URL\n- `NEXT_PUBLIC_SUPABASE_ANON_KEY`: the public anon key\n- `SUPABASE_SERVICE_ROLE_KEY`: the service role key for server-side admin access\n\nFor local GitHub login to work, you also need to configure the GitHub OAuth provider in Supabase and add your local callback URL if required by your setup.\n\n### Where to find the GitHub token\n\nOpen GitHub and go to `Settings -> Developer settings -> Personal access tokens`.\n\n- Fine-grained tokens are recommended if you only want to grant the minimum repository\u002Fprofile access this app needs.\n- Classic tokens also work if that fits your setup better.\n\nCreate a token, copy it once, and place it in `GITHUB_TOKEN` inside `.env.local`.\n\n## License\n\n[AGPL-3.0](LICENSE) — You can use and modify Git City, but any public deployment must share the source code.\n\n---\n\n\u003Cp align=\"center\">\n  Built by \u003Ca href=\"https:\u002F\u002Fx.com\u002Fsamuelrizzondev\">@samuelrizzondev\u003C\u002Fa>\n\u003C\u002Fp>\n","Git City 项目将你的 GitHub 个人资料转化为一个互动城市中的3D像素艺术建筑。其核心功能包括基于贡献量生成高度不一的建筑物、自由飞行模式探索城市、个性化配置建筑外观及社交互动等，利用了Next.js框架、Three.js引擎以及Supabase数据库等技术栈实现。该项目特别适合于想要以新颖有趣方式展示自己或他人GitHub活动情况的技术爱好者们使用，同时也为开发者社区提供了一个相互发现和交流的新平台。",2,"2026-06-11 03:50:48","high_star"]