Skip to content

Our project aims to revolutionize smoking cessation by offering a comprehensive mobile app integrated with hardware to help individuals track their smoking habits, set personalized goals, and receive support on their quit journey.

Notifications You must be signed in to change notification settings

behzodfaiziev/nicless-flutter

Repository files navigation

Nicless App

Introduction

Our project aims to revolutionize smoking cessation by offering a comprehensive mobile app integrated with hardware to help individuals track their smoking habits, set personalized goals, and receive support on their quit journey. By leveraging real-time data insights, interactive features, and community support, we strive to empower users to break free from smoking addiction and improve their overall health and well-being.

Prerequisites

Before running the app, ensure you have the following prerequisites:

  • Flutter SDK installed on your machine. You can find instructions for installation here.
  • Android Studio or IntelliJ IDEA with Flutter and Dart plugins installed.
  • A physical Android device or an emulator configured for development.

Getting Started

To run the app on your device, follow these steps:

  1. Clone the repository to your local machine:
git clone https://github.com/behzodfaiziev/nicless-flutter
  1. Add your Google Maps API key to the AndroidManifest.xml file located at android/app/src/main/AndroidManifest.xml. Replace YOUR_API_KEY_HERE with your actual API key.
<meta-data
    android:name="com.google.android.geo.API_KEY"
    android:value="YOUR_API_KEY_HERE"/>
  1. Add your Gemini API key to lib/product/utils/constants/app/credentials_const
    • note:
    class CredentialsConst {
       static const geminiApiKey = 'YOUR_API_KEY';
    }
  1. Ensure that the app is running in debug mode to sign in successfully.
flutter run --debug
  1. Congratulations! You have successfully set up and run Nicless on your device. If you encounter any issues, don't hesitate to create an issue here.

Hardware

Software

The app follows the Clean Architecture pattern, separating the business logic from the UI layer for improved scalability and testability. It also uses BLoC (Business Logic Component) for state management, providing a robust and predictable way to manage the app's state

Featured:

  • Clean Architecture
  • Unit test covered (aiming to follow TDD)
    • Use case test: ✅ 100%
    • Repository test: ✅ 100%
    • Bloc test: (under development) 0%
    • Data source test: (under development) 0%
  • Firebase: Authentication, Firestore, Analytics
  • BLoC
  • Bluetooth
  • Network manager inspired by Vexana
  • Google Maps
  • Gemini

GDSC Solution Challenge 2024

gdsc-nicless.mp4

User interface

Logo

Onboarding

Home & Automatic Counter

Profile

Gemini

Google Maps

Rating

About

Our project aims to revolutionize smoking cessation by offering a comprehensive mobile app integrated with hardware to help individuals track their smoking habits, set personalized goals, and receive support on their quit journey.

Topics

Resources

Stars

Watchers

Forks

Languages