InvasiveID is a mobile app that allows users to identify invasive plants based on their region and suggests alternative non-invasive plants to plant instead. Authorized users can also create their own lists of plants. For more information, please visit the Invasive Plants Admin App.
Index | Description |
---|---|
Deployment Guide | Learn how to deploy this project yourself |
User Guide | Learn how to use this application |
Directories | General project directory structure |
Changelog | Any changes post publish |
Credits | Meet the team behind the solution |
License | License details |
To deploy this solution, please follow our Deployment Guide.
For instructions on how to use the mobile app, refer to the User Guide.
├── android
├── assets
│ ├── images
│ ├── sources.md
│ └── screenshots
├── docs
├── ios
├── lib
│ ├── configuration
│ ├── functions
│ ├── global
│ ├── notifiers
│ ├── pages
│ └── main.dart
├── linux
├── macos
├── test
├── web
├── windows
├── .metadata
├── analysis_options.yaml
├── pubspec.lock
└── pubspec.yaml
-
/android
: Contains the Android platform-specific code and configurations. -
/assets
: Holds the static files./images
: The images used in the app.sources.md
: Links to the external files/images used in the app.
/screenshots
: Screenshots of the main pages of the app.
-
/docs
: Contains the documentation for the app - changelog, deployment guide, and user guide. -
/ios
: Contains iOS platform-specific code and configurations. -
/lib
: Houses the main source code for the Flutter app, organized into subdirectories./configuration
: Holds configuration-related code./functions
: Contains reusable functions or utility code./global
: Stores global variables/constants./notifiers
: Holds classes responsible for state management using providers or notifiers./pages
: Contains different app screens or UI components.main.dart
: The entry point for the Flutter app, where execution begins.
-
/linux
,/macos
,/web
,/windows
: These directories hold platform-specific code for Linux, macOS, web, and Windows, respectively. -
/test
: Contains test-related files for automated testing. -
.metadata
: Internal metadata related to the Flutter project. -
analysis_options.yaml
: Configuration file for static analysis tools like Dart analyzer. -
pubspec.lock
: Lock file specifying exact versions of dependencies used in the project. -
pubspec.yaml
: Project configuration file specifying dependencies, metadata, and more for the Flutter app.
View the changelog here.
This application was architected and developed by Visal Saosuo, Julia You, and Yuheng Zhang, with project assistance from Franklin Ma. A special thanks to the UBC Cloud Innovation Centre Technical and Project Management teams for their guidance and support.
This project is distributed under the MIT License.
Licenses of libraries and tools used by the system are listed below:
- For cupertino_icons, permission_handler, provider, flutter_cache_manager, geolocator, geocoding, flutter_launcher_icons, flutter_native_splash, flutter_dotenv, cached_network_image, flutter_svg, and amazon_cognito_identity_dart_2
- For camera, image_picker, path_provider, shared_preferences, http, url_launcher, http_parser, and flutter_lints
- For image_picker, amplify_flutter, and amplify_auth_cognito