placeholder logo for Jukebox




The Jukebox Mod is a song manager for Geometry Dash. The primary goal is simplifying the process of swapping Newgrounds songs with any NONGs.

What is a NONG, anyway?

NONG stands for Not On NewGrounds. Basically, it means any song that is not on Newgrounds that was replaced manually through the game files.

NONGs have always been a hassle to manage, because some level creators use popular Newgrounds song IDs and replace them with a NONG. So you have to swap those song files around quite a bit if you play a level with the Newgrounds song and a level with a NONG song.

Start your jukebox!

The Jukebox Mod makes the process of managing your songs a breeze. You can download your NONGs using your method of choice. My recommandations are: Cobalt and yt-dlp, a CLI application. After getting your MP3 file, you can enter a song and author name, for easier management.

Note that Jukebox copies imported MP3 files in the storage location designated by Geode. You can open this folder from ingame.

Alternatively, you can download songs from Song File Hub. I have added a button that opens their site in your browser.

So, how do I begin?

You can open up the Jukebox menu form any Level page. Just click on the song name, and either a song list (if the level has multiple songs), or the song management screen (if the level only uses 1 song) will open. From here, you can add, remove and swap songs.

Reporting bugs

You can report bugs on the Jukebox Discord server


  • The Geode team, for creating such an amazing toolkit



  • Add metadata parsing for autocompletion of song info (experimental)
  • Add "song offset" option for importing nongs (thanks Flafy)
  • Fix "Level name" doing absolutely nothing in the add popup
  • Small visual improvements to the app song popup
  • Bump to Geode v3.1.1


  • Fix visual bugs
  • Remove debug logs


  • Redesign the NONG UI
  • Make a fix for non-ascii user dirs on Windows
  • Fix crash on editor settings (thanks Flafy)
  • Fix delete song for default songs (thanks Flafy)
  • Fix deleting songs not actually working (thanks Flafy)
  • 2.206 support
  • Bump to Geode v3.0.0-beta.1
  • Whatever other migrations were needed in the process


  • Add jukebox::getActiveNong, jukebox::deleteNong and jukebox::getDefaultNong to the API (thanks Flaafy!)
  • Add a Ref CustomSongWidget param in jukebox::setActiveNong for updating the UI (thanks Flaafy!)
  • Bump Geode version to v2.0.0-beta.27


  • Add support for main level songs


  • Fix bugs


  • Fix a bug that made the nong menu inaccessible on levels with multiple songs, out of which one was invalid (not found on NG) - go play Golden Hope 8)
  • Add a song ID label to the multiple song list of the nong menu


  • Expose a minimal API for interacting with NONG data (Thanks to Flafy)


  • Fix dailies and weeklies setting their song name to "Unknown"


  • Fix fixDefault running for every single CustomSongWidget instance


  • Fix the download slider being made invisible
  • Make file IO error messages more descriptive
  • Add a button for joining the Discord server


  • Fix a bug that caused defaultValid to be undefined when writing to JSON
  • Fix crashing if JSON is invalid
  • Backup invalid JSONs


  • Redesign NongDropdownLayer and NongAddPopup, using the new initAnchored
  • Use more layouts in the UI
  • Fix a bug that made the download bar visible after fixing the default song


  • Prevent CustomSongWidget update after adding a new song
  • Add a way to refetch default song info if it somehow is broken
  • Bugfixes


  • Try and fix crash on startup from invalid JSON

v2.2.3 (Cocos2dx reference)

  • Fix NongAddPopup filters
  • Fix random letter generator sometimes getting \0 as a character
  • Write JSON on DataSaved
  • Move initial JSON read to on_mod(Loaded)
  • Remove permission check for Android


  • Actually bump mod.json version


  • Fixed the "Unknown" bug
  • Try and fix songs that have been broken by said "Unknown" bug
  • Copy the song ID to the clipboard when opening Song File Hub
  • Add a label with the chosen file path in the add popup
  • Ask for permissions on Android before trying to pick a song


  • Removed Song File Hub integration


  • Reenable manual song add on Android


  • Temporarily disable manual song add on Android
  • Fix touch priority issues in the song list


  • Fix buttons not working in the song list


  • Fix crashes on Android
  • Fix manual song add on Android


  • Fix the Robtop Music Library being... a little weird
  • Fix the random Error text that would appear in the song widget sometimes
  • 0.0B fix now accounts for songs that are included with the game (GD/Resources/songs folder)
  • Fix some editor song select issues
  • Android support (experimental)


  • Correctly disable nongs for levels that have robtop levels
  • Fix a crash that happened when entering a level with an invalid song id
  • Store level name separate from song name (and display it in the song list)
  • Store song data as minified json
  • Fix 0.0B on multi asset levels (experimental)


  • Fix a crash that happens when entering a level with song info data not fetched


  • Add 2.2 support
  • Add support for levels with multiple songs (experimental)
  • Optimizations and bug fixes
  • Rebranding!

This release is only available on Windows, next one should be available on Android too. (Sorry android fellas)


  • Fix crash when adding a NONG manually for the first time


  • Fix crashes on Android


  • Increased the Z Layer for the NONG popup


  • Replace old popup with a layer that fits the game more
  • Recompile for Android NDK r26b


  • Add experimental Android support


  • Changed the song size label to show N/A instead of 0.00MB for songs that are missing their file
  • Added a setting that prevents mashup downloading from Song File Hub
  • Added a "Remove All" button to the NONG list
  • Fixed aspect ratio issues in the popups
  • Copy locally added nongs to the mod storage instead of using the file provided by the user
  • Created a manifest system to track JSON structure updates
  • Added a button that opens the settings page in the nong popup


  • Fixed a bug that prevented saving songs to disk if the Song File Hub name contained Unicode characters


  • Switched to using the new API for Song File Hub
  • Gave the add song popup some elasticity


  • Removed all filters for the song file picker so that MacOS can actually use it.


  • Fixed a crash that occured by pressing ESC while downloading a NONG
  • Disable NONGd for levels that use Robtop level songs
  • Update json impl to match the new json library version API
  • Add a small indicator to the song label to hint that you can click it
  • Fixed text inputs for Geode v1.0.0-beta.14


  • Mod can now build on MacOS


  • Implement async file downloads
  • Fix some crashes
  • Only download one song at a time instead of downloading all of them
  • Fix size label showing 0.00mb for undownloaded newgrounds songs
  • Reduce calls to updateSongObject


  • Fix the invalid SFH download popup being positioned weirdly
  • Update the Custom Song Widget on every nong update
  • Use layouts for list cells
  • Try to fix unicode not being parsed correctly
  • Fix nongd folder not being created properly on some occasions


  • Initial version
The recommended way to install mods is through the in-game mod loader. You will have to manually install the .geode files you get from this page.

Some mods also require other mods as dependencies; you will need to find and install them yourself.

Site made by HJfod . Thank you to Nekit for the domain!

Geode Team 2024