Gnome Roam is a plant discovery application where users identify local flora and customize a virtual gnome companion.
The application uses a cross-platform architecture to support macOS, Windows, Web, Android, and iOS.
- Frontend: Built with Flutter for multi-platform support from a single codebase.
- Backend:
- Firebase Auth: User account management.
- Firestore: Storage for plant records and user profiles.
- Firebase Storage: Hosting for user-uploaded plant images.
- External APIs:
- Pl@ntNet API: Handles image recognition and plant classification.
- Trefle API: Provides botanical data and species information.
Displays a summary of recent activity and a shortcut to start a new discovery.
A map interface (via OpenStreetMap) showing where plants have been recorded near Case Western Reserve University. Markers include details like plant species and address.
Uses the device camera or gallery to identify plants. It returns scientific names, common names, and family classifications.
Tracks user stats including total plants found and current explorer rank. Displays the user's customized gnome.
A cute dress-up screen where you can customize your gnome's hat, beard, skin, and boots using points earned from discoveries!!!
- Missions: A guided discovery system for completionist users. Track progress against a comprehensive list of all local fauna within the state, with bonus points awarded for discovering new species.
- Public Leaderboards: Competitive rankings at the neighborhood, state, and country levels.
- Expanded Customization: Significantly more options for gnome hats, beards, skins, and boots.
- Advanced Map Features: Integration of nearby hiking trails and improved point-of-interest markers.
- Beyond Botany: Future support for identifying insects and other local wildlife.
-
Clone the repository:
git clone https://github.com/PatheticMustan/HackCWRU2026.git
-
Configure Environment Variables: Create a
.envfile in the root directory and add your API keys (seeexample.envfor reference):PLANTNET_API_KEY=your_key_here TREFLE_API_KEY=your_key_here
-
Install Dependencies:
flutter pub get
-
Run the Application:
flutter run
If plant identification is not returning results, ensure your PLANTNET_API_KEY is valid and that the .env file is present in the root directory.
If you encounter Gradle configuration errors, ensure you are using a compatible Gradle version (v8.13 or higher recommended). You can update this in android/gradle/wrapper/gradle-wrapper.properties.
If icons or gnome layers do not appear, verify that pubspec.yaml correctly includes the assets/ and assets/gnome_clothes/ directories and that flutter pub get was executed after any changes.
Ensure your local environment is configured to connect to the Firebase project. If switching environments, you may need to re-run firebase configure.




