Git Product home page Git Product logo

health-care-app's Introduction

Health Care App

logo

A Final Year Project
View Report

Table of Contents
  1. About The Project
  2. Features
  3. Prerequisites
  4. Installation
  5. Resources
  6. License

About The Project

The project is a part of final year college project. Due to the current situation caused by Covid-19, Our team decided to contribute in the field of mobile health care system. The project uses 'symptom checker API' and simpler version of 'step detection algorithm' and also BMI calculation formula.The resources for the project are all open source and listed here (as much as I can remember).

Tools Used

  • NodeJS (for server side)
  • Flutter (for client side)
  • MongoDB database
  • Infermedica API (for symptom checking)
  • scrcpy (for mirroring android screen to laptop)

Features

  • Online appointment
  • Symptom checker
  • Online survey
  • Step Detection & BMI
  • Order Medical Products
  • Upload prescription ( only uploads images to server, view prescribtion list for admin is not done)

Auth Screen

login screen      register screen

Home Screen + Doctor Screen

home screen      doctor screen

Diagnosis screen + Step detection screen

symptom check  screen      diagnosis screen

step detection screen

Survey Screen

survey create screen      survey screen

survey result screen

Note: Few other screen images can be found on screenshots folder

Prerequisties

  • Flutter v1.22.5
  • NodeJs (2020 version)
  • Infermedica API key (2020 version)
  • MongoDB (2020 version)
  • Android with screen size 1080 x 1920 pixels

Installation

  1. download & setup flutter v1.22.5, see this link for downgrading flutter version
  2. also download the NodeJs code from this link & set it up
  3. run the below commands
 flutter pub get
 flutter pub run build_runner build
 flutter clean
  1. if vsync problem occurs, see this link & restart the IDE
  2. goto file api_constants.dart (ctrl-p and filename may help to find it easily in VScode)
  3. fill the api key & server url values, you can get ip address of server (if local) by running ifconfig in linux, make sure both server & client is on same network, infermedica api key can be found by signing in to inferemedica website, it has limited free usage as of the year 2020.
  4. connect the android & run the command flutter run or flutter run --release

Resources

  1. Basic flutter

    • youtube, udemy & documentations, any resource is enough
  2. state management in flutter

    some minor details
    • Bloc : for same purpose as cubit, only used for authentication part
    • Cubit : for state that fetches data from API (CRUD)
    • Cubit_CUD : cubit that deals with Create, Upate & Delete operation
    • Cubit_R : cubit that deals with Read operation
    • provider : for local UI state (ex. toggling login & register screen, detecting current open tab etc)
    • Setstate : (for quick & rough implementation, can be improved with cubit or provider)
  3. Flutter app design architecture

    • DDD (Domain Driven Design) without any tests and minor rough implementations
    • Reso coders videos on DDD + few other's videos on same topic, better to go through TDD first
  4. Images used from various github repos + google

License

Distributed under the MIT License. See LICENSE for more information.

health-care-app's People

Contributors

san0330 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.