Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nirajprakash/taru-plants-android
Android App for plant lovers! Identify plants, check the weather, and discover new favorites. Built using MVVM architecture with local caching using Room SQLite Database. Taru is completely open source! πΏπ»π±
https://github.com/nirajprakash/taru-plants-android
android awesome-android kotlin material-design material-you mvvm mvvm-clean openweathermap-api plantnet plants-identification room room-database trefle-api weather-app
Last synced: 4 days ago
JSON representation
Android App for plant lovers! Identify plants, check the weather, and discover new favorites. Built using MVVM architecture with local caching using Room SQLite Database. Taru is completely open source! πΏπ»π±
- Host: GitHub
- URL: https://github.com/nirajprakash/taru-plants-android
- Owner: nirajprakash
- License: mit
- Created: 2022-12-13T01:55:48.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-10-24T00:56:47.000Z (21 days ago)
- Last Synced: 2024-10-24T12:19:35.565Z (21 days ago)
- Topics: android, awesome-android, kotlin, material-design, material-you, mvvm, mvvm-clean, openweathermap-api, plantnet, plants-identification, room, room-database, trefle-api, weather-app
- Language: Kotlin
- Homepage: https://play.google.com/store/apps/details?id=com.taru
- Size: 24.9 MB
- Stars: 54
- Watchers: 2
- Forks: 4
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
ο»Ώ
# Taru : Plants Search with Weather
[![APP](https://img.shields.io/badge/APP-1.0.3-E0234E.svg?style=for-the-badge)](https://android-arsenal.com/api?level=24)
[![API](https://img.shields.io/badge/API-24%2B-brightgreen.svg?style=for-the-badge)](https://android-arsenal.com/api?level=24) ![Hilt](https://img.shields.io/badge/Hilt-2.44-FFCA28?style=for-the-badge)> Introducing Taru - the ultimate app for plant lovers! Our Android app is built using MVVM architecture with local caching using Room SQLite Database. With Taru, you can identify plants, check the weather, and discover new favorites. And the best part? Taru is completely open source!
![](images/taru.webp)
![](images/scan.webp)## [Download it on Google Play here](https://play.google.com/store/apps/details?id=com.taru)
## Feature Roadmap
- 2023: Insect Detection.
- 2023: Plantation Guidance.## Setup:
- create `local.properties` file in [root folder](./) if not exists.
- Add `weatherKey`, `trefleKey` and `plantnetKey` in the file as shown below.```android
...weatherKey="key here"
trefleKey="key here"
plantnetKey="key here"
```- Get `weatherKey` from [Open Weather Map](https://openweathermap.org/)
, `trefleKey` from [Trefle](https://trefle.io/) and `plantnetKey` from [Plantnet](https://my.plantnet.org/)## Features
The whole functionality is implemented inside the domain folder, where the repository accesses remote and local data from the data folder and provides it to the viewmodel using the Use Case (Clean Architecture).
* Use of open source api.
* Usage of android Data binding.
* MVVM Architecture + Clean architecture.
* Android Room Sqlite Database for local cache.
* Theming in M3 for Light and Dark.## Tech Stack
This project takes advantage of best practices of common libraryies and tools in android.
* [Kotlin](https://kotlinlang.org/)
* [Coroutines](https://kotlinlang.org/docs/reference/coroutines-overview.html) - for background operations
* [Hilt](https://dagger.dev/hilt/) - for dependency injection
* [Coil](https://github.com/coil-kt/coil) - image loading library
* [Jetpack libraries](https://developer.android.com/jetpack):
* [Navigation](https://developer.android.com/topic/libraries/architecture/navigation/) - in-app navigation
* [Lifecycle](https://developer.android.com/topic/libraries/architecture/lifecycle) - perform an action when lifecycle state changes
* [ViewModel](https://developer.android.com/topic/libraries/architecture/viewmodel) - store and manage UI-related data in a lifecycle conscious way
## Show your love :heart: by giving a :star: on this project.
# Open Source Credits
- [PlantNet](https://identify.plantnet.org/) for plants detection.
- [Trefle](https://trefle.io) is open source plants database.
- [OpenWeatherMap](https://api.openweathermap.org) used of Weather Forecast.# License
[![License](https://img.shields.io/:license-apache%202.0-blue.svg?style=for-the-badge)](LICENSE)