
osu!
A free rhythm game client (osu! "lazer") where you click notes to the beat.
- Stars
- 19.4k
- Forks
- 2.9k
- Licence
- MIT
- Language
- C#
- Last update
- 4 days ago
- Type
- App
What it is
osu! is a free-to-play rhythm game where players click, tap, and follow objects in time with music. This repository holds "lazer", the open-source successor to the osu! game client, released under the MIT license. It also includes a framework for developers who want to build custom gameplay variations called rulesets.
- Play osu! beatmaps on Windows, macOS, Linux, iOS, or Android using the latest release
- Build and run the game from source with the .NET SDK
- Create a custom ruleset using the templates in the repository
- Test changes to osu-framework or osu-resources against the game
Great for
- Rhythm game fans who want a free, open-source client
- Players who want to try the newer lazer client alongside the stable osu! client
- Developers interested in building custom rhythm gameplay rulesets
- Contributors who want to work on a large C# game codebase
Not ideal for
- People who only want the official stable osu! experience, since the README says lazer is still under constant development and not yet preferred by most users
- Anyone on an unsupported platform without build experience, since the README only lists Windows, macOS, Linux, iOS, and Android builds
- People who use AI tools for contributions, since the README says such issues and pull requests are typically closed and locked
How to get it
- 1
Clone and build from source
You'll need: A desktop platform with the .NET SDK installed
Clone the repository
git clone https://github.com/ppy/osuEnter the directory
cd osuBuild and run from the command line
dotnet run --project osu.Desktop - 2
Run it
- Install the latest release for your platform from the links in the README, or clone the source
- If building from source, install the .NET SDK first
- Run dotnet run --project osu.Desktop from inside the osu directory
- For performance testing, add -c Release to the build command
- 3
Get the most out of it
- Load the solution through osu.Desktop.slnf, osu.Android.slnf, or osu.iOS.slnf to reduce dependencies in your IDE
- Run dotnet format before committing code, as the README asks
- Use the osu! (Tests) configuration when testing new components
- Use the UseLocalFramework and UseLocalResources scripts to cross-test framework or resource changes
Downloads
Strengths
- Free and open source under the MIT license, with game resources under a separate license
- Runs on several desktop and mobile platforms with prebuilt releases
- Includes templates and a framework for building new rulesets
Trade-offs
- The README describes the project as under constant development, so behavior may change between releases
- iOS access depends on a TestFlight link that the README says fills up quickly and resets occasionally
- The "osu!" and "ppy" branding is trademarked and not covered by the MIT license
How it compares
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| osu (this) | 19.4k | App | intermediate | 4 days ago | Rhythm game fans who want a free, open-source client |
| 2048 | 13.5k | App | beginner | 2.0 years ago | People who want to play 2048 without installing anything, via the hosted site |
| Craft | 11.1k | App | intermediate | 2.6 years ago | Developers who want to read a compact, real example of a voxel game in C |
| pixijs | 48.6k | Library | intermediate | 6 days ago | Web developers building interactive 2D graphics or animations |
| flame | 10.8k | Library | intermediate | 4 days ago | Flutter developers who want to add a game to an app |
Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.