Skip to content

mammaldiversity/mdd_app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

384 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mdd_app

Test

Screenshot

A cross-platform application to access the Mammal Diversity Database. It features offline access, advance search with data filtering, and support to export a subset of the data to a Comma-Separated Values (CSV) or JSON file.

What's new

  • Visual Alignment: The synonym section formatting and the app's overall color scheme now closely match the website.
  • Cleaner Layout: We’ve streamlined the "Name Usages" display under synonyms to remove clutter and make it easier to read.

Installation

Android

You can download the app on Google Play. Click the badge below or scan the QR code.

Get it on Google Play

Android QR Code

Apple Devices

You can download the app on the App Store. Click the badge below or scan the QR code.

Download on the App Store

iOS QR Code

Linux

Download your preferred package format from the releases page:

  • Debian/Ubuntu (.deb): Install using sudo apt install ./mdd_<version>_amd64.deb
  • Fedora/openSUSE (.rpm): Install using sudo dnf install ./mdd-<version>-1.x86_64.rpm
  • Portable Tarball (.tar.gz): Extract mdd-Linux-x86_64.tar.gz and run the mdd executable directly.

Windows

Download the mdd-Windows-x86_64.zip archive from the releases page, extract it, and run mdd.exe.

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.

Development

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
  • Create a data directory in the root of the project and place the latest MDD.zip and MIL.tar.gz inside it. This data is required to pre-generate the local SQLite database.
mkdir data
# Download MDD.zip and MIL data into the data/ directory
  • Generate the SQLite database and run a build:

We provide a convenient bash script that builds the Rust parser, generates assets/data/mdd.db, and compiles Flutter for supported platforms.

./tools/build.sh

Alternatively, if you only want to generate the database manually without compiling Flutter release builds:

./tools/generate_prefilled_db.sh
  • 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

About

An app for viewing mammal diversity database

Resources

License

Stars

2 stars

Watchers

1 watching

Forks

Packages

 
 
 

Contributors