Skip to main content

Development Setup

This guide will walk you through setting up your development environment for osu! development.

Prerequisites

Before you begin, ensure you have the following installed:

Required Software

1

Install .NET 8.0 SDK

Download and install the .NET 8.0 SDK for your platform.The project uses .NET 8.0.100 with latestFeature roll-forward policy as specified in global.json.
2

Choose an IDE

We recommend using an IDE with intelligent code completion and syntax highlighting:

Visual Studio

Latest version recommended for Windows development

JetBrains Rider

Cross-platform IDE with excellent C# support

Visual Studio Code

Lightweight editor with extensions

Visual Studio Code Setup

If using VS Code, install these required extensions:

Downloading the Source Code

1

Clone the repository

git clone https://github.com/ppy/osu
cd osu
2

Verify your setup

Check that you have the correct .NET SDK version:
dotnet --version
You should see version 8.0.100 or later.

Updating the Source Code

To update your local repository to the latest commit:
cd osu
git pull

Mobile Development Setup

Mobile platform development requires additional setup steps.
If you plan to develop for Android or iOS platforms, you need to install the required workloads:
sudo dotnet workload restore
This installs the Android/iOS tooling required to complete mobile builds.

Solution Files

Load the solution via platform-specific .slnf files rather than the main .sln file.
The project uses filtered solution files to reduce dependencies and hide irrelevant platforms:
osu.Desktop.slnf
Open the appropriate .slnf file in your IDE based on your target platform.

Testing Your Setup

Once you’ve completed the setup, you can verify everything works by building the project:
dotnet restore
dotnet build osu.Desktop
If the build succeeds, you’re ready to start developing!

Next Steps

Building

Learn how to build and run osu!

Architecture

Understand the codebase structure

Build docs developers (and LLMs) love