mdd_app
A cross-platform application to access the Mammal Diversity Database. It includes offline access and support to export a subset of the data to a Comma-Separated Values (CSV) file.
Try it out 🚀
Android, Linux, and Windows
You can download the beta release from the releases page.
iOS, iPadOS, and macOS
You will need to install the Apple TestFlight app and follow the instructions in this link.
Development Status
The app status is experimental. Expect bugs and incomplete features.
Technologies
We develop the app using cross-platform, widely use technologies for mobile app development. The core technologies are:
- Rust: Mainly used for MDD data parsing and whenever high-performance computation is needed.
- Flutter: Used for the app's user interface and to interact with the MDD data.
- Fluter Rust Bridge: Core package to simplify the communication between Rust and Flutter.
- SQLite: Used to store the MDD data locally and to provide offline access.
Contributing
Prerequisites
Make sure you have the following software installed. Follow the links for installation instructions.
- Rust
- Flutter
- Android Studio or Xcode
- An additional IDE. We recommend Visual Studio Code.
Steps
- Clone the repository:
0r if you are using GitHub CLI:
- Change to the project directory:
- Try to run the app:
Troubleshooting
Fix Flutter Rust Bridge
-
Check if the
flutter_rust_bridge_codegenbinary installation matches the version in thepubspec.yamlfile in the app root directory and theCargo.tomlfile in therustdirectory. -
If the versions do not match, reinstall the
flutter_rust_bridge_codegenbinary and update thepubspec.yamlandCargo.tomlfiles.
Fix Xcode build issues
- Clean flutter build cache:
- Remove the
ios/Podsormacos/Podsdirectory:
- Run flutter build outside Xcode: