| Crates.io | rosu-memory-lib |
| lib.rs | rosu-memory-lib |
| version | 1.3.1 |
| created_at | 2025-07-11 11:19:51.935589+00 |
| updated_at | 2025-09-13 15:13:36.690665+00 |
| description | A library to read osu! memory |
| homepage | |
| repository | https://github.com/Glubus/rosu-memory-lib |
| max_upload_size | |
| id | 1747760 |
| size | 110,004 |
A modular Rust library for reading osu! memory, forked from rosu-memory.
While rosu_memory was originally designed as a binary application, this fork transforms it into a flexible library that can be integrated into any Rust project. This architectural change allows developers to build their own tools and applications around osu! memory reading capabilities.
Memory reading for stable (lazer support may come soon)
Modular design allowing custom implementations
Callback system for real-time data processing
Type-safe memory access
Cross-platform support (Windows primary focus)
Basic example:
use rosu_memory_lib::reader::{init_loop, waiting_for_play};
fn main() -> eyre::Result<()> {
// Initialize the memory reader
let (mut state, process) = init_loop(500)?;
// Wait for gameplay with optional callback
waiting_for_play(&process, &mut state, Some(|p, state| {
println!("beatmap title: {}", rosu_memory_lib::reader::beatmap::stable::get_title(p,state))
Ok(())
}))?;
Ok(())
}
Check out the examples/ directory for various implementations and use cases.
The library provides bindings for multiple programming languages (not finished):
Python bindings are available in the bindings/python directory. They provide a Pythonic interface to the library's functionality using PyO3.
Example:
from rosu_memory import init_loop, get_beatmap_info
# Initialize the memory reader
state, process = init_loop(500)
# Get current beatmap info
beatmap = get_beatmap_info(process, state)
print(f"Playing: {beatmap.metadata.title_romanized}")
Here are some projects that use rosu-memory-lib:
If you're using rosu-memory-lib in your project, feel free to submit a PR to add it to this list!
Contributions are welcome! Feel free to submit issues and pull requests.
Same as original rosu_memory