updating the playtime frontend with claude only code to replace the one graph with a dumb-bell graph, having each individual map show its players at beginning versus end and also the overall impact of maps + their popularity
This commit is contained in:
@@ -16,9 +16,11 @@ Node process; nginx reverse-proxies a subdomain to it.
|
||||
- `/` — Overview: concurrent-player population graph (hand-rolled SVG, not
|
||||
a charting library — scroll to zoom, drag to pan all the way back to
|
||||
2015-07-16, click any point for who was online then), a map-to-map
|
||||
population bar chart (same zoom/pan, pool of 150 maps), and a "recurring
|
||||
window" chart for questions like "who's online 6–15h every Tuesday"
|
||||
(pick days of week + time window + date range)
|
||||
population chart (dumbbell-style: grey dot = population when the map
|
||||
started, colored dot = population when it ended, green/red depending on
|
||||
whether it grew or shrank — same zoom/pan, pool of 150 maps), and a
|
||||
"recurring window" chart for questions like "who's online 6–15h every
|
||||
Tuesday" (pick days of week + time window + date range)
|
||||
- `/players` — search players by current/previous name or SteamID (shows
|
||||
which old name matched, if any), sortable by recent activity, name, or
|
||||
highest playtime
|
||||
@@ -27,9 +29,16 @@ Node process; nginx reverse-proxies a subdomain to it.
|
||||
history (with the map(s) each session overlapped)
|
||||
- `/maps` — search maps by name
|
||||
- `/maps/[mapname]` — every time period that map was played
|
||||
- `/maps/period/[mapId]` — one specific occurrence: players present at any
|
||||
point during it, votes cast (grouped by vote event, since a map could
|
||||
theoretically see more than one), and prev/next map navigation
|
||||
- `/maps/impact` — leaderboard ranking maps by how they tend to affect
|
||||
population (average start→end player-count change per occurrence,
|
||||
average retention %, best/worst single session), toggleable between
|
||||
impact and raw popularity (times played), rather than the plain
|
||||
played-in-order list on `/maps`
|
||||
- `/maps/period/[mapId]` — one specific occurrence: a zoomed-in population
|
||||
timeline for just that session's window (padded a little on each side so
|
||||
the transition in/out is visible), players present at any point during
|
||||
it, votes cast (grouped by vote event, since a map could theoretically
|
||||
see more than one), and prev/next map navigation
|
||||
- `/countries` — every country with at least one player, sorted by player
|
||||
count descending
|
||||
- `/countries/[code]` — players from that country, sortable by highest
|
||||
@@ -37,7 +46,9 @@ Node process; nginx reverse-proxies a subdomain to it.
|
||||
|
||||
A `favicon.ico` in `app/` is picked up automatically by Next — no config needed.
|
||||
|
||||
Every feature from the original planning conversation is now built.
|
||||
Every feature from the original planning conversation is now built, including
|
||||
the map-population-impact features (dumbbell chart, impact leaderboard,
|
||||
per-session zoomed timeline) discussed most recently.
|
||||
|
||||
## Deploying on the Hetzner box
|
||||
|
||||
|
||||
Reference in New Issue
Block a user