A Tauri + Leptos application for launching RustFS.
Before building the application, you need to download the required RustFS binary for your platform:
# Download binary for current platform
./build.sh
# Build for development
cargo tauri dev
# Build for production
cargo tauri build# Download binary for current platform
build.bat
# Build for development
cargo tauri dev
# Build for production
cargo tauri buildThe build script will automatically detect your platform and download the appropriate binary:
- macOS Apple Silicon:
rustfs-macos-aarch64 - macOS Intel:
rustfs-macos-x86_64 - Windows x86_64:
rustfs-windows-x86_64.exe
This approach reduces download time and storage space by only downloading the binary needed for your current platform.
Before committing your code, run all CI checks locally:
make pre-commitThis will run:
- Code formatting check (
cargo fmt) - Clippy linter (
cargo clippy) - Frontend build (
trunk build) - Unit tests (
cargo test)
make check-fmt # Check code formatting
make check-clippy # Run Clippy linter
make check-frontend # Build frontend
make check-test # Run tests
make fix-fmt # Auto-fix formatting
make check-upstream # Check for new upstream rustfs/rustfs versionsThe project automatically syncs with upstream rustfs/rustfs releases:
- Hourly Check: A scheduled GitHub Actions workflow runs hourly to check
https://version.rustfs.com/latest.jsonfor new versions - Automatic Build: When a new version is detected, the workflow automatically creates a git tag and triggers the build process
- Manual Check: Run
make check-upstreamlocally to check for new versions - Manual Trigger: Can be manually triggered via GitHub Actions if needed
This ensures the launcher always stays up-to-date with the latest RustFS releases without manual intervention.
The project uses GitHub Actions for continuous integration and automated releases. See .github/ACTIONS.md for details.
Installed launchers can check, download, verify, and install signed application updates from the application UI. The update replaces the complete application bundle, including the bundled RustFS binary. Release signing and operational details are documented in docs/SELF_UPDATE.md.
For local testing of GitHub Actions workflows, see .github/TESTING.md.
VS Code + Tauri + rust-analyzer.