https://github.com/zeozeozeo/geode-rs
Write Geode mods in Rust
https://github.com/zeozeozeo/geode-rs
bindings bindings-generator broma geode geode-mod geode-sdk geometry-dash modding modding-sdk rust-port
Last synced: 14 days ago
JSON representation
Write Geode mods in Rust
- Host: GitHub
- URL: https://github.com/zeozeozeo/geode-rs
- Owner: zeozeozeo
- License: unlicense
- Created: 2026-02-22T23:25:40.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2026-05-28T17:11:31.000Z (about 1 month ago)
- Last Synced: 2026-05-28T19:12:43.620Z (about 1 month ago)
- Topics: bindings, bindings-generator, broma, geode, geode-mod, geode-sdk, geometry-dash, modding, modding-sdk, rust-port
- Language: C++
- Homepage:
- Size: 2.21 MB
- Stars: 10
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# geode-rs
An effort to port the Geode client mod API to Rust (WIP).

## Crates
- [broma-rs](./crates/broma-rs) - an implementation of the Broma language parser in Rust.
- [stl-core](./crates/stl-core) - partial implementations of the 3 major C++ stdlibs (libcxx, msvc, gnustl)
- [geode-codegen](./crates/geode-codegen) - converts Broma definitions to Rust types (similar to Geode's codegen).
- [geode-macros](./crates/geode-macros) - proc macro implementations for geode-rs
- [geode-rs](./crates/geode-rs) - bindings for Cocos, FMOD, the Geode loader API and Tulip
- [geode-example](./crates/geode-example) - example of a Rust Geode mod, hooking regular functions and constructors, storing own data in modified classes, logging, cross-compiling for android32/android64/imac/m1 from Windows, rendering egui ui, calling safe geode loader apis, constructing a Cocos popup and opening it
- [geode-egui](./crates/geode-egui) - crossplatform egui backend implemented in Cocos, similar to [gd-imgui-cocos](https://github.com/matcool/gd-imgui-cocos)
- [mac-universal](./crates/mac-universal) - used to merge intel and m1 mac binaries into one fat mach-o .dylib in geode-example (apple bullscheisse)
## TODO
- android32 (untested, compiles), iOS, MacOS
- ~~Automatically generate loader bindings? (long shot)~~ semi-done?