1 unstable release

new 0.2.0 Mar 13, 2025

#46 in #status

MIT license

2MB
810 lines

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.

Steps

  • Clone the repository:
git clone https://github.com/mammaldiversity/mdd_app.git

0r if you are using GitHub CLI:

gh repo clone mammaldiversity/mdd_app
  • Change to the project directory:
cd mdd_app
  • Try to run the app:
flutter run

Troubleshooting

Fix Flutter Rust Bridge

  • Check if the flutter_rust_bridge_codegen binary installation matches the version in the pubspec.yaml file in the app root directory and the Cargo.toml file in the rust directory.

  • If the versions do not match, reinstall the flutter_rust_bridge_codegen binary and update the pubspec.yaml and Cargo.toml files.

Fix Xcode build issues

  • Clean flutter build cache:
flutter clean
  • Remove the ios/Pods or macos/Pods directory:
rm -rf ios/Pods
  • Run flutter build outside Xcode:
flutter build ios

Dependencies

~3–4.5MB
~67K SLoC