proj7k

active

An objective difficulty and technique-breakdown toolchain for osu!mania 7K.

Online 7K chart catalog ↗
started
2026-09-11
last push
2026-10-15
commits
216
merged PRs
32
PythonNode.jsosu!lazerWebgithub ↗quickstart ↗

Official star ratings tend to underrate inverse and dense long-note charts and single-column jacks, and treat alternating hands the same as one hand doing all the work. proj7k rates a chart from the chart alone, built on keypress timing, hand shape and reading load, and calibrates against the Jinjin 7K Dan ladder.

It now has an 8-axis technique radar, objective star ratings, star sync (and restore) into osu!lazer, a downscaler that keeps the hand patterns, replay diagnostics and player profiles, all in one local web dashboard. The online 7K chart catalog is public, with every 7K chart and official and engine star ratings side by side.

Milestones

12/14 · 86%
  1. [x]done
    Kickoff: difficulty decoupled from player data, Jinjin 7K Dan as the benchmarkADR-0001–0003
  2. [x]done
    7k-VSDL pattern language, methodology spec and blind-test validationADR-0004–0006
  3. [x]done
    Jack/stream decoupling and continuous strain-decay poolingADR-0007–0008
  4. [x]done
    Non-destructive osu!lazer injection: star sync and one-click restoreADR-0009
  5. [x]done
    Live 8-axis radar dashboard and closed-loop downscalerADR-0010–0011
  6. [x]done
    Replay profiler and closed-loop trainingADR-0012–0014
  7. [x]done
    Absolute technique stars and the total-star compositionADR-0015–0016
  8. [x]done
    Spec v0.2 engine lands; the difficulty field replaces strainADR-0017–0021
  9. [x]done
    Legacy engine deleted; four tools merged into one web dashboardADR-0022–0024
  10. [x]done
    7K charts generated from audioADR-0027
  11. [x]done
    Online 7K chart catalog goes public: official and engine SR side by sideADR-0026
  12. [x]done
    Profile levels fitted across plays; technique habits read from replaysADR-0028–0029
  13. [ ]planned
    Cloud platform: osu! OAuth sign-in and player profiles
  14. [ ]planned
    Cross-platform core engine, including WASM

Dev logs

1
  1. proj7k, weeks one to five: from methodology to one dashboard

    From kickoff on 11 September to today, 29 ADRs and over two hundred commits. What got built, phase by phase, and what got thrown out.

Recent commits

JunJulAugSeptOct
last 20 weeks · 176 commits
  1. a57cd41dashboard: uploads up to about 190 MB (was about 47 MB)
  2. 5596762dashboard: a job lost to a restart or a dropped connection fails instead of spinning forever
  3. c991fe1Catalog: version script and stylesheet links by content hash
  4. c9a3a18Catalog home page at /, README rewritten for players
  5. 3b28725catalog: incremental `update` from osu! for a scheduled task
  6. ff2597ddashboard: restart osu!lazer, and sync with the game closed and reopened
  7. 5e38ecafeat(profiler): technique habits read from replay key timing across plays
  8. 04bd0e2restart-services: restart the catalog through its boot task when present; document task settings
  9. 40fdcc0fix: check out dan_table.json with LF too, so engine_version matches on Windows
  10. 7eaf861feat(catalog): random sort draws a page of charts from the current filters
  11. 527a565fix(profiler): read the profile's levels across plays, not the best play
  12. 5ba9d85feat(catalog): get the chart catalog ready to go public
  13. 046f09cAdd one-step restart for the dashboard and catalog site
  14. a3d052dgenerator: drop the round-BPM snap
  15. e9c2c90generator: snap an estimated tempo to a nearby whole or half BPM

View all on GitHub →