An asynchronous API wrapper for Geometry Dash.
geometry-dash
currently supports:
- Account login
- Level download and search
- Map packs, gauntlets, and level lists
- Cosmetics
- Leaderboards
- Comments and account posts
- Fetching and Downloading a Song:
import gd
client = gd.Client()
song = await client.get_song(1)
print(song.name) # "Chilled 1"
print(song.size) # 0.07
print(song.link) # "http://audio.ngfiles.com/0/1_newgrounds_consin.mp3"
# Download the song and save it as "chilled.mp3" in the current directory
await song.download_to("chilled.mp3")
- Getting the Music Library
import gd
client = gd.Client()
library = await client.music_library()
print(library.version) # 127
print(library.artists) # Dictionary of artist IDs to artist details
print(library.tags) # Dictionary of tag IDs to tag names
- Logging in and Commenting
import gd
client = gd.Client()
credentials = await client.login("notanerd1", "*********") # Replace with your credentials
print(credentials) # Account(account_id=24514763, player_id=218839712, name='notanerd1', password=********)
# Post a comment on a level with 0% progress
comment_id = await client.comment("I am high", level_id=111663149, percentage=0)
print(comment_id) # 2994273
- This project is a work in progress. Expect some features to change or improve over time.
- Contributions and feedback are welcome!
- Documentation will be available after the module is published.
This project is licensed under the MIT License. See the LICENSE file for more details.