Online Health Consultation Application built with Flutter
Happy Care
Online Health Consultation Application built with Flutter for Client, ExpressJs for Backend Server (private repo sorry ?).
Features
- Finding doctors, specializations by symptoms. (Currently, the feature is based on database, will upgrade with machine learning later)
- Getting online doctors, busy doctors.
- Asking member user about feeling today for finding doctor (30 mins loop).
- Chatting, sending image 1v1 between doctors and members.
- Doctors can create a new prescription for members.
- Finding doctors by specialization.
- User information CRUD.
Technology used
- Flutter GetX pattern, GetX for state management. (actually I want to use BLOC (Rx) but I only have 1 month to complete so I use Getx to do it faster. But GetX’s build-in DI is so stupid)
- Authentication and Authorization using JWT.
- Backend using ExpressJs, MongoDB.
- Realtime event using Socket.io.
- Cloudinary for storing images.
Directory structure
project
│ README.md
│
│
└───lib
│ |
│ └───core
│ | |
│ │ └───helpers <--[Helpers function like customShowDialog(context)]
│ | |
│ │ └───themes <--[Colors]
│ | |
│ │ └───utils <--[logger, validator, cache manager, sharedPref,..]
│ │
│ └───data
│ | |
│ │ └───api <-[Provider data from remote]
│ | |
│ │ └───models
│ | |
│ │ └───repositories
│ | |
│ │ └───services
│ | |
│ │ └───socket_io_service.dart <--[Socket.io service]
│ │ |
│ │ └───cloudinary_service.dart <--[Cloudinary service]
│ │
│ └───modules <-[Screens, Controllers, Binding,... support modules]
│ |
│ └───routes <-[Define routes and pages for named navigator, binding]
│ |
│ └───widgets <-[Common widgets for reusing]
│ |
│ └───main.dart
│
│
└───assets
└───icons
|
└───images
|
└───logos
|
└───lottie <-[lottie animation]
|
└───.env <-[.env for environment]
Setup and run
Click to expand- Download APK
- Setup and run
- Flutter
- Install Flutter.
- Using
stable
channel:❯ flutter channel stable ❯ flutter upgrade
- Flutter doctor:
❯ flutter doctor
- Install all the packages by:
❯ flutter pub get
- Create .env file
assets/.env
has following structure:BASE_URL=https://komkat-happy-care.herokuapp.com
- Run app on real devices or emulator by:
❯ flutter run
or debug mode in VSCode or some IDEs
- Flutter
Screenshots (Running Stable in Mi 9)
Sorry for some UIs are not designed in advance, it will be not responsive for 16:9, not as beautiful as the intro, sign in, sign up because there is no time, just code in mind ?
Splash, Intro, SignIn, SignUp
View ScreenshotsSplash Screen | Intro1 | Intro2 |
Intro3 | Intro4 | |
Sign In | Sign Up | |
Main Screen (Member Role)
View ScreenshotsMain Screen (Doctor Role)
View ScreenshotsSome gif(s)
View gif(s)Finding Doctor By Symptoms |
Todo
- WebRTC for voice, video call
- Notifications
- Rebuild UI (i think no no no because i am very lazy ?)
Contributors ✨
Nguyễn Minh Dũng ? ? |