Skip to content

A definitive list of osu! open source projects & libraries

Notifications You must be signed in to change notification settings

CirclePeople/osu-list

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 

Repository files navigation

osu-list Support Server

An awesome-style list of osu! projects built by the community. Circle People is not affiliated with & does not endorse any projects listed here.

Table of Contents

Official osu! projects

These projects are built by the osu! team directly.
URL Description/Notes
osu! The official website for the rhythm game osu!.
osu!lazer osu!lazer source code, the next generation client for osu!
osu!stream An official port of osu! on iOS and Android devices from a past era.
osu!web osu!'s website source code
osu!wiki The home of the community-managed wiki for osu!
osu!framework The framework that powers osu!, including features that can be used to make other games/applications
other osu! projects Other official osu!team projects can be found here.

Gameplay

Other operating systems (osu! stable client)

🤔 You may want to check out osu!lazer

Neither of these are official, however many users have reported success with these methods.

Alternative game clients

These are game clients that *do not connect to osu!

servers*, but may be useful for practice, writing tools or other things.

Client Description
opsu! An unofficial open-source osu! client written in Java
McOsu An osu! client designed for practice, with VR support
osu!droid An open-source fanmade client of osu! for the Android platform

Rulesets

URL Description/Notes
Custom ruleset directory Official directory for lazer custom rulesets

Beatmap mirrors

Mirror Description/Notes
Beatconnect Comprehensive beatmap mirror with API support
Nerinyan
osu.direct
Mino

Osu! chatbots

Discord chatbots

Bot Description/Notes
owo! Popular osu! tracking and score bot
Sunny osu! bot with support for restricted users and osu! login
Bathbot Feature-rich bot for osu!
Quna Actively developed osu! bot that supports unranked score submission
MissAnalyzer osu! bot for replay analysis
Yuna osu! replay recording bot
Shisha osu! replay recording bot approved by the creator of danser
Sombrax79 Bot for stamina training recommendations

In-Game chatbots

Bot Description/Notes
Tillerino Bot for beatmap recommendations
Sombrax79 Bot for stamina training recommendations
Elitebotix A osu! bot focused around tournaments and analysis.
goeobot Actively maintained irc bot for beatmap recommendations

Lobby chatbots

Bot Description/Notes
AutoHost osu!'s official autohost bot.
osu-ahr Auto Host Rotation bot for osu! multiplayer.
script-chan A bot used to create and handle matches/players easily.

Streaming tools

Tool Description
StreamCompanion A tool for streamers featuring a PP counter, map overlays, and more!
gosumemory Cross-Platform memory reader for osu! featuring web-based & in-game pp counters.
Ronnia Twitch bot for linking maps from Twitch to ingame chat
Danser High fps video creation tool for osu! replays.
tosu Eponymous software for reading osu! memory, accounting for most of gosumemory's issues

Chat clients

wip

Userscripts

Collections

URL Description
CollectionManager An extensive tool for creating, editing, and exporting of osu! collections.
osuCollector! Explore curated beatmap collections from fellow players.
osu-pps A list of the most overweighted maps in osu!.

Mapping

wip

URL Description
storybrew Storyboard generator for osu!
Mapset Verifier A desktop app which tests quantifyable issues in osu! beatmapsets.
Mapping Tools Tools for manipulating beatmaps
bezier-approximation Bezier curve approximator
Image to Anchors Tool for converting images to slider anchors for view in the osu! editor.
Mapperator Efficient beatmap pattern search and beatmap construction based on features like rhythm & distance
osu-collaboration-bot A Discord bot meant to streamline the organisation of mapping collabs for osu!
beatmap-viewer-web Open-source browser-based beatmap viewer

Skins

Skinning resources

wip

URL Description
osuskinner Online tool for skin mixing and creation.

Skin listing

URL Description/Notes
Circle People Skins from many top players featured on the channel.
rudj skinhub Collection of skin sources from many players
Skinship Compendium A comprehensive archive of all completed skins from the osu!forum.
Osuck Skins Discover a vast selection of osu!skins in one convenient place.

Skin tools

wip

URL Description/Notes
OsuSkinMixer Mix and manage your osu! skins with ease!
OsuSkinChecker Simple program to check if all the elements for an osu! skin are present.
Osuck's skin.ini editor Create your skin.ini file via a web interface.

Development

Documentation

API libraries

⚠ These libraries are maintained by the community, and may have minor differences from the official API. Your mileage may vary.
Library Language Description/Notes
aiosu python Async Python library for everything osu! related
ossapi python A definitive python wrapper for the osu! api.
osu-api-extended typescript Package for advanced work with "osu" api
rosuv1 / rosuv2 rust A rust wrapper for osu!api v1 / v2.
OsuSharp c# Unofficial wrapper for the osu! API (V1, V2) written in C# and compatible with .NET 5
osu.py python A minimal async python wrapper for the osu API

Utility libraries

Library Language Description/Notes
rosu-pp rust Standalone crate to calculate star ratings and performance points for all osu! gamemodes
osu-classes typescript Rewrite of the basic class structure of osu!lazer in TypeScript
osu-parsers typescript A bundle of TS parsers for all osu! data formats
osu-pp-calculator typescript The most up-to-date TS star rating/performance calculator library
gosu-pp go Port of osu!lazer difficulty and performance calculator in go
rosu-pp-py python Python bindings for rosu-pp
rosu-pp-js javascript JS bindings for rosu-pp
akatsuki-pp-go golang Go bindings for rosu-pp
akatsuki-pp c# c# bindings for rosu-pp
akatsuki-pp-js javascript JS bindings for akatsuki-pp
bancho.js javascript ThePoon's bancho library
slider python osu! file format parser
mapping_tools_core c# C# library for interacting with beatmaps
aiordr python Python library for replay recording

Other projects

URL Description/Notes
osu! matchmaking Competitive matchmaking system for osu!
osumapper An automatic beatmap generator using Tensorflow / Deep Learning.
Osekai.net the home of alternative rankings, in-depth profile info, medal solutions, hundreds of versions, and more
Rewind A beatmap/replay analyzer for the rhythm game called osu!
CircleGuard A tool to help you analyze osu! replays.
minipad Open-Source wooting-like analog keypad with rapid trigger
osu! batch beatmap downloader Tool for easily downloading large amounts of osu! maps
FunOrange's osu!trainer A tool that allows you to modify the difficulty of a beatmap very easily.
OpenTabletDriver Open source, cross-platform, user-mode tablet driver
PMDF Library for interacting with in-memory values, used for StreamCompanion
wysi Open-source osu website alternative with player setup details.
huismetbenen Osu PP rankings alternatives supporting simulation of pp reworks.

Contributing

Feel free to join the Discord above and join the thread for this list if you want to improve it! Alternatively, create a discussion if you want to discuss here on GitHub.

This document is a work in progress. Feel free to improve it by:

  • Adding new, unique projects.
  • Improving formatting.
  • Updating statuses of projects that have been abandoned.

Please follow these guidelines when adding a project:

  • Familiarize yourself with Markdown so you don't break things.
  • This goes without saying, but it should be relevant to osu!.
    • It also should not break osu! rules (ex. tools that give advantages that interact with the client, custom servers, etc.) If you don't know, ask.
  • Provide some (concise) details about your project.
  • Avoid using link shorteners when possible.
    • These are hard to moderate and deal with, hard links are appreciated (ex. A clean Discord invite link, a website, or a Git page for your bot)
    • Long links can be dealt with by using reference style links. This helps people using the web editor to help readability.
    • If you link to another project in the description that is already on this page, use a reference style link as well.
  • When using the GitHub web editor use No wrap option so it doesn't look terrible when editing long tables.

Notice

This document is released under the CC BY-SA 4.0 license. "osu!" and "ppy" are trademarks of ppy Pty Ltd. & are not affiliated with Circle People.

About

A definitive list of osu! open source projects & libraries

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published