Installation

parsecore is published on PyPI and requires Python 3.10+.

pip

pip install parsecore

uv

uv add parsecore

Verify

import parsecore
from parsecore.Performance import Beatmap, Difficulty

attrs = Difficulty().calculate(Beatmap.from_path("map.osu"))
print(attrs.stars)

If that prints a star rating, you’re ready head to the Performance points (pp).

Tip

After a new osu! pp rework deploys, third-party tools and websites can lag behind for a while. parsecore tracks the official in-game algorithm, so make sure you’re on the latest version to get current values.