https://github.com/extrawest/flutter_firebase_water_tracker
Flutter Water Tracker App With Firebase Services (Auth, Firestore, Cloud Messaging, Crashlytics, Remote Config)
https://github.com/extrawest/flutter_firebase_water_tracker
analytics cloud-messaging crashlytics dart demo firebase firebase-auth firebase-firestore firebase-hosting firestore flutter flutter-web remote-config water-tracker web
Last synced: about 2 months ago
JSON representation
Flutter Water Tracker App With Firebase Services (Auth, Firestore, Cloud Messaging, Crashlytics, Remote Config)
- Host: GitHub
- URL: https://github.com/extrawest/flutter_firebase_water_tracker
- Owner: extrawest
- Created: 2023-01-27T10:42:15.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-01-27T10:52:56.000Z (over 3 years ago)
- Last Synced: 2025-10-13T15:39:48.371Z (8 months ago)
- Topics: analytics, cloud-messaging, crashlytics, dart, demo, firebase, firebase-auth, firebase-firestore, firebase-hosting, firestore, flutter, flutter-web, remote-config, water-tracker, web
- Language: Dart
- Homepage:
- Size: 207 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Water tracker app 🚰
[](https://codemagic.io/apps/63bb4ba82f6920dcb7c3647c/63bb4ba82f6920dcb7c3647b/latest_build)
[]()


[](https://user-images.githubusercontent.com/42183561/215068906-8dfd638f-4239-452d-bf11-a29520b07bf2.mp4)
## Project info
- This project is a water tracker app connected to Firebase.
- The app is fully supported on iOS and Android.
- The app is built using the Firebase authentication and Firestore database.
- The app uses others Firebase Services such as Cloud Messaging, Crashlytics, Remote Config, etc.
- The covered with Unit Tests, Widget Tests and Integration Tests.
## Demo
https://user-images.githubusercontent.com/42183561/215068906-8dfd638f-4239-452d-bf11-a29520b07bf2.mp4
## How to run
- Clone the project
```shell
$ git clone https://github.com/extrawest/flutter_firebase_water_tracker.git
```
- Install dependencies
```shell
$ flutter pub get
```
- Configure Firebase
```shell
$ flutterfire configure
```
- Run the app
```shell
$ flutter run
```
- Optional but highly recommended to setup pre-push hook
- Initialize git repository if you haven't already
```shel
$ git init
```
- add sh script to git hooks
```shel
$ ln -s pre-push.sh .git/hooks/pre-push
```
## How to test
- To run all test
```shel
$ flutter test
```
- To generate codecovarege:
- Run test with additional flag
```shel
$ flutter test --coverage
```
this results into **coverage/lcov.info** file creation
- Generate html file using previosly generated lcov file
```shel
$ genhtml coverage/lcov.info -o coverage/html
```
- Use **coverage/html/index html** to view current project's codecoverage
- In order to run shader warm ups use:
```shell
$ flutter drive --profile --cache-sksl --write-sksl-on-exit sksl_shader01.json --driver=test_driver/integration_test.dart --target=integration_test/app_test.dart
```
#### Maintained by *Lesha Melnychenko*
[Extrawest.com](https://www.extrawest.com), 2023