A RocketMQ-Rust Dashboard GUI implemented with Tauri.
- Native desktop application with web-based UI
- Cross-platform support (Linux, macOS, Windows)
- Backend written in Rust
- Frontend built with modern web technologies:
- React - UI Library
- Vite - Build Tool
- Tailwind CSS & Radix UI - Styling and UI Components
- Recharts - Data Visualization
- Small bundle size and low resource usage
- Secure with minimal attack surface
Note: The features shown in the sidebar menu are currently under development.
| Category | Feature | Status |
|---|---|---|
| Platform | NameServer | 🚧 In Development |
| Dashboard | 🚧 In Development | |
| Proxy | 🚧 In Development | |
| Cluster | 🚧 In Development | |
| Messaging | Topic | 🚧 In Development |
| Consumer | 🚧 In Development | |
| Producer | 🚧 In Development | |
| Message | 🚧 In Development | |
| MessageTrace | 🚧 In Development | |
| DLQMessage | 🚧 In Development | |
| Advanced | ACL Management | 🚧 In Development |
- Rust toolchain (1.77.2 or later)
- Node.js and npm
- Platform-specific dependencies:
- Windows: WebView2
- macOS: No additional dependencies
- Linux: webkit2gtk, libssl, and other dependencies (see Tauri prerequisites)
# Clone the repository
git clone https://github.com/mxsm/rocketmq-rust.git
cd rocketmq-rust/rocketmq-dashboard/rocketmq-dashboard-tauri
# Install frontend dependencies
npm install
# Build the application
npm run tauri buildIf you prefer using Cargo, you can install the Tauri CLI:
cargo install tauri-cliThen build the project:
# Install frontend dependencies (still required)
npm install
# Build the application
cargo tauri buildThe binary will be available in src-tauri/target/release/.
⚠️ Note: This is a temporary authentication implementation. A more comprehensive authentication system with additional security features (password change UI, multi-user support, role-based access control) will be implemented in future versions.
When you first run the application, a default configuration will be created with the following credentials:
- Username:
admin - Password:
admin123
The authentication configuration is stored at:
- Windows:
%APPDATA%\com.rocketmqrust.dashboard\auth_config.json - macOS:
~/Library/Application Support/com.rocketmqrust.dashboard/auth_config.json - Linux:
~/.config/rocketmq-rust-dashboard/auth_config.json
For more details on authentication and security, see AUTH_CONFIG.md.
# Install dependencies
npm install
# Start the development server
npm run tauri dev# Install dependencies
npm install
# Start the development server
cargo tauri dev# Using NPM
npm run tauri build
# OR Using Cargo
cargo tauri buildDevelopment mode includes debug logging by default. Check the console for logs.
rocketmq-dashboard-tauri/
├── src/ # Frontend source code
├── src-tauri/ # Rust backend
│ ├── src/
│ │ ├── main.rs # Application entry point
│ │ └── lib.rs # Library exports
│ ├── Cargo.toml # Rust dependencies
│ ├── tauri.conf.json # Tauri configuration
│ └── icons/ # Application icons
├── package.json # Node.js dependencies
└── README.md
npm run dev- Start frontend development servernpm run build- Build frontend for productionnpm run tauri dev- Start Tauri development modenpm run tauri build- Build application for production
Licensed under either of:
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contributions are welcome! Please feel free to submit a Pull Request.
