项目作者: arteevraina

项目描述 :
Blood Donation App made by humans for humans.
高级语言: Dart
项目地址: git://github.com/arteevraina/KnowYourDonor.git
创建时间: 2021-01-04T12:10:49Z
项目社区:https://github.com/arteevraina/KnowYourDonor

开源协议:MIT License

下载


forthebadge
forthebadge
forthebadge







Know Your Donor 🩸

Blood Donation app made for connecting donor with the patient. During this harsh times of pandemic, normal health care services are facing a set back and Covid-19 is on the top of the priority of health care departments. Also, people are now afraid to leave visit hospitals to arrange blood as they fear they might catch Covid-19. So, to make their life easier Know Your Donor has been developed.

Tech Stack 💻

  • Flutter.
  • Dart.
  • Firebase.
  • Provider for StateManagement.

Features 🚀

  • Email Authentication using Firebase.
  • Find donors and recipients in your near by area.
  • Volunteer as a Blood Donor or open a request for blood units.

Feel free to open an issue if you have something in mind, it might make a large impact 💓

Screenshots 👀










Getting Started ⭐

  • Get an API key at https://cloud.google.com/maps-platform.

  • Enable Google Map SDK for each platform.

    • Go to Google Developers Console.
    • Choose the project that you want to enable Google Maps on.
    • Select the navigation menu and then select “Google Maps”.
    • Select “APIs” under the Google Maps menu.
    • To enable Google Maps for Android, select “Maps SDK for Android” in the “Additional APIs” section, then select “ENABLE”.
    • To enable Google Maps for iOS, select “Maps SDK for iOS” in the “Additional APIs” section, then select “ENABLE”.
    • Make sure the APIs you enabled are under the “Enabled APIs” section.
  • You can also find detailed steps to get start with Google Maps Platform here.

Web

  1. <body>
  2. <script src="https://maps.googleapis.com/maps/api/js?key=API_KEY"></script>
  3. <script src="main.dart.js" type="application/javascript"></script>
  4. </body>

Android

Specify your API key in the application manifest android/app/src/main/AndroidManifest.xml:

  1. <manifest ...
  2. <application ...
  3. <meta-data android:name="com.google.android.geo.API_KEY"
  4. android:value="YOUR KEY HERE"></manifest>

iOS

Specify your API key in the application delegate ios/Runner/AppDelegate.m:

  1. #include "AppDelegate.h"
  2. #include "GeneratedPluginRegistrant.h"
  3. #import "GoogleMaps/GoogleMaps.h"
  4. @implementation AppDelegate
  5. - (BOOL)application:(UIApplication *)application
  6. didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  7. [GMSServices provideAPIKey:@"YOUR KEY HERE"];
  8. [GeneratedPluginRegistrant registerWithRegistry:self];
  9. return [super application:application didFinishLaunchingWithOptions:launchOptions];
  10. }
  11. @end

Or in your swift code, specify your API key in the application delegate ios/Runner/AppDelegate.swift:

  1. import UIKit
  2. import Flutter
  3. import GoogleMaps
  4. @UIApplicationMain
  5. @objc class AppDelegate: FlutterAppDelegate {
  6. override func application(
  7. _ application: UIApplication,
  8. didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
  9. ) -> Bool {
  10. GMSServices.provideAPIKey("YOUR KEY HERE")
  11. GeneratedPluginRegistrant.register(with: self)
  12. return super.application(application, didFinishLaunchingWithOptions: launchOptions)
  13. }
  14. }

Opt-in to the embedded views preview by adding a boolean property to the app’s Info.plist file
with the key io.flutter.embedded_views_preview and the value YES.

How to setup locally ? 🏁

  1. Fork the repository.

  2. Clone the repository using the following command.

    1. git clone https://github.com/<your-user-name>/KnowYourDonor.git
  3. Open the code in your favorite code editor.

  4. Install the dependencies using the following command:

  1. $ flutter pub get
  1. Build the app using the following command:
  1. $ flutter run

Repository Structure 🚧

  1. * lib/ : all the code which is making the app run goes in this directory.
  2. * lib/components : contains code for reusable widgets in the app like buttons, appbars, textboxes etc.
  3. * lib/constants : contains the configuration for color pallets, validator functions and text styles.
  4. * lib/models : contains code for Seeker and Donor Model.
  5. * lib/provider : contains code for all the Provider classes for statemanagement.
  6. * lib/repository : contains code for Donor and Seeker Repository for communicating with Cloud Firestore database.
  7. * lib/views : contains code for the frontend screens.
  8. * test : contains the code for widget and unit test of the Application.

Interested in contributing ? 🌼

See the contributor’s guide!

Questions or issues ?

If you have general question about the project. Feel free to join discord server.

License

MIT © 2021

Learn Flutter ?

Follow this link