{"id":25005124,"url":"https://github.com/interstella0/gfl-ze-watcher","last_synced_at":"2026-05-06T11:31:29.480Z","repository":{"id":275254114,"uuid":"925550803","full_name":"InterStella0/gfl-ze-watcher","owner":"InterStella0","description":"Show GFL ZE data for my own needs.","archived":false,"fork":false,"pushed_at":"2025-06-21T14:15:42.000Z","size":6522,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-21T15:26:50.938Z","etag":null,"topics":["gis","javascript","poem-api","qgis","reactjs","rust","statistic"],"latest_commit_sha":null,"homepage":"https://gflgraph.prettymella.site/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/InterStella0.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":"interstella0","tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"lfx_crowdfunding":null,"polar":null,"buy_me_a_coffee":null,"thanks_dev":null,"custom":null}},"created_at":"2025-02-01T06:04:33.000Z","updated_at":"2025-06-21T14:15:45.000Z","dependencies_parsed_at":"2025-03-09T09:22:45.231Z","dependency_job_id":"f79af17b-58c9-4839-ae70-76298becfb3c","html_url":"https://github.com/InterStella0/gfl-ze-watcher","commit_stats":null,"previous_names":["interstella0/gfl-ze-watcher"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/InterStella0/gfl-ze-watcher","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InterStella0%2Fgfl-ze-watcher","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InterStella0%2Fgfl-ze-watcher/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InterStella0%2Fgfl-ze-watcher/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InterStella0%2Fgfl-ze-watcher/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/InterStella0","download_url":"https://codeload.github.com/InterStella0/gfl-ze-watcher/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InterStella0%2Fgfl-ze-watcher/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262030552,"owners_count":23247677,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gis","javascript","poem-api","qgis","reactjs","rust","statistic"],"created_at":"2025-02-05T00:10:55.957Z","updated_at":"2026-05-06T11:31:29.471Z","avatar_url":"https://github.com/InterStella0.png","language":"JavaScript","funding_links":["https://ko-fi.com/interstella0"],"categories":[],"sub_categories":[],"readme":"# ZE Graph Website\n![Code Size](https://img.shields.io/github/languages/code-size/InterStella0/gfl-ze-watcher?style=flat)\n\nThis track all CS2 Zombie Escape related servers that I’m aware of, allowing you to view player playtime on each server. \nIt was originally created to monitor only the GFL Zombie Escape server, but has since expanded to include several \nservers in the western community. Chinese servers are not tracked due to technical limitations on their servers. Only GFL and \nMapeadores servers provide Steam IDs, enabling consistent tracking of individual players. Other servers rely solely \non player names for tracking. Any request for me to track your own server, you can contact me through the provided email\naddress on the website.\n\nThe [website](https://zegraph.xyz/) is hosted on a smol vps, be nice :)\n\nThis is codebase is purely for displaying data from the database. Itself does\nnot store the player data and webscraping. Those are hidden. If you wish to host your own, you would need to implement\nyour own datascraping mechanism.\n\n## How it works\n```mermaid\nflowchart LR\n  %% Frontend\n  subgraph FE[\"🌐 Frontend\"]\n    direction TB\n    Website(\"The Website\")\n  end\n  %% Backend \u0026 GIS\n  subgraph BE[\"🖥️ Backend Services\"]\n    direction TB\n    Backend(\"Backend\")\n    QGIS(\"QGIS Server\")\n    ProfileProvider(\"Profile Picture Provider\")\n  end\n  %% Scraper \u0026 Database\n  subgraph DSDB[\"🗄️ Scraper \u0026 Database\"]\n    direction TB\n    DataScraper(\"Data Scraper (Hidden)\")\n    Database[(\"PostgreSQL\")]\n  end\n  %% External services\n  subgraph EX[\"🔗 External Services\"]\n    direction TB\n    ExternalProfileProvider(\"External Profile Provider\")\n    SteamAPI(\"Steam API\")\n    GFLAPI(\"GFL API\")\n    SteamA2s(\"Steam A2S\")\n    GFLBans(\"GFLBans\")\n    Vauff(\"Vauff.com\")\n    S2ZE(\"s2ze.com\")\n    YouTube(\"Youtube API v3\")\n    MusicNames(\"GitHub Music-Names\")\n  end\n  %% Connections with higher contrast arrows\n  Website        ==\u003e Backend\n  QGIS           == WMS ==\u003e Website\n  Database       == PostGIS ==\u003e QGIS\n  Backend        ==\u003e|Write Only| Database\n  Database       ==\u003e|Heavy Query| Backend\n  Backend        ==\u003e Website\n  DataScraper    ==\u003e Database\n  Database       ==\u003e DataScraper\n  ProfileProvider ==\u003e|Image URL| Backend\n  SteamAPI       ==\u003e ProfileProvider\n  ExternalProfileProvider ==\u003e ProfileProvider\n  SteamAPI       ==\u003e|Location| DataScraper\n  GFLAPI       ==\u003e|Match Score \u0026 Misc data| DataScraper\n  MusicNames      ==\u003e|Map Music| DataScraper\n  YouTube      ==\u003e|Map Music Video| DataScraper\n  SteamA2s  ==\u003e|Players \u0026 Map| DataScraper\n  GFLBans        ==\u003e|Players \u0026 Infraction| DataScraper\n  Vauff          ==\u003e|Map Images| Backend\n  S2ZE      ==\u003e|Map Metadata| Backend\n  %% GitHub-friendly styles with high contrast and rounded borders\n  classDef fe fill:#e1f5fe,stroke:#0277bd,stroke-width:2px,color:#000000\n  classDef be fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px,color:#000000\n  classDef db fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px,color:#000000\n  classDef ex fill:#fff3e0,stroke:#ef6c00,stroke-width:2px,color:#000000\n  %% Apply styling to nodes\n  class Website fe\n  class Backend,QGIS,ProfileProvider be\n  class DataScraper,Database db\n  class ExternalProfileProvider,MusicNames,YouTube,SteamAPI,SteamA2s,GFLBans,Vauff,S2ZE,GFLAPI ex\n  %% Style subgraphs with rounded corners\n  style FE fill:#e1f5fe,stroke:#0277bd,stroke-width:2px,color:#000000\n  style BE fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px,color:#000000\n  style DSDB fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px,color:#000000\n  style EX fill:#fff3e0,stroke:#ef6c00,stroke-width:2px,color:#000000\n```\n## Preview\n![Main Page](assets/img.png)\n\n![Server Page](assets/server.png)\n\n![Players Page](assets/players.png)\n\n![Player Page](assets/player.png)\n\n![Maps Page](assets/maps.png)\n\n![Map Page](assets/map.png)\n\n![Live Radar Page](assets/live_radar.png)\n\n![Radar Page](assets/radar_overall.png)\n\n![Radar Page2](assets/radar_country.png)\n\n![Tracker Page](assets/tracker.png)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finterstella0%2Fgfl-ze-watcher","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finterstella0%2Fgfl-ze-watcher","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finterstella0%2Fgfl-ze-watcher/lists"}