Architecture
The desktop application combines:- Frontend: React + Vite application with Material-UI components
- Backend: Rust-based Tauri runtime for native functionality
- Communication: Tauri IPC bridge between frontend and backend
Technology Stack
Frontend
- React 18 with Vite
- Material-UI (MUI Joy)
- React Router for navigation
- MapLibre GL for mapping
Backend
- Tauri v2.4.0
- Rust 2021 edition
- Native OS APIs
- Secure IPC layer
Package Information
- Product Name: Mas Agua
- Package Name: masagua-desktop
- Bundle Identifier: com.masagua.desktop
- Current Version: 1.0.5
Tauri Plugins
The desktop app uses the following Tauri plugins:Store Plugin (v2.4.1)
Persistent key-value storage for application settings and state.Updater Plugin (v2.4.1)
Automatic application updates from GitHub releases.Process Plugin (v2.0)
Process management and application lifecycle control.Window Configuration
Default window settings fromtauri.conf.json:
Security Capabilities
The application uses Tauri’s capability system for granular permission control:Platform Support
Windows
MSI installer format
macOS
DMG disk image
Linux
DEB, RPM, and AppImage formats
Development Workflow
Key Features
- Native Performance: Compiled Rust backend with minimal overhead
- Small Bundle Size: ~15MB compared to Electron’s 100MB+
- Auto-Updates: Seamless updates from GitHub releases
- Offline Support: Full functionality without internet connection
- System Tray: Background operation with tray icon
- Native Notifications: OS-level notification integration
Next Steps
Installation
Set up the development environment
Building
Build and package the desktop app
Auto-Updates
Configure automatic update system
API Reference
Explore available APIs

