Monorepo of my various Dioxus projects.
| Package | Platform | Description |
|---|---|---|
discord_bot |
web (fullstack) | Discord bot with Dioxus web UI |
game_manager |
web (fullstack) | Game server manager |
httpui |
desktop | HTTP client (Postman-like) |
dioxus_music_web |
web (fullstack) | Music player web app |
dioxus_music_desktop |
desktop | Music player desktop app |
dioxus_music_mobile |
android/ios | Music player mobile app |
This project uses a Nix flake for development dependencies. Enter the devshell:
nix developThe devshell provides: Rust toolchain, Dioxus CLI (dx), Android SDK/NDK, wasm-bindgen, diesel CLI, and other build dependencies.
Install the following manually:
- Rust (see
rust-toolchain.tomlfor the required toolchain) - Dioxus CLI:
curl -sSL http://dioxus.dev/install.sh | sh - For Android: Android SDK + NDK, set
ANDROID_HOMEandANDROID_NDK_HOME - For database projects:
diesel_cliwith postgres support, a running PostgreSQL instance
iOS builds require Xcode installed on the host machine. The Nix devshell handles SDK discovery automatically, but you must complete these one-time setup steps:
-
Install Xcode from the Mac App Store or developer.apple.com
-
Accept the Xcode license:
sudo xcodebuild -license
-
Verify iOS SDKs are available (from within the devshell):
xcrun --show-sdk-path --sdk iphonesimulator xcrun --show-sdk-path --sdk iphoneos
The devshell unsets SDKROOT and sets DEVELOPER_DIR to Xcode.app so that xcrun can discover the iOS SDKs even if xcode-select points at CommandLineTools.
# Serve with hot-reload (from repo root)
dx serve --package <package_name> --platform <platform>
# Build
dx build --package <package_name> --platform <platform>Examples:
# Web
dx serve --package dioxus_music_web --platform web
# Desktop
dx serve --package dioxus_music_desktop --platform desktop
dx serve --package httpui --platform desktop
# Mobile
dx build --package dioxus_music_mobile --platform android
dx build --package dioxus_music_mobile --platform ios