Giter Club home page Giter Club logo

labauth's Introduction

Lab Authenticator

This app solves the Usecase 2, see this file

Alt Text

This application is made with ReactNative and Firebase.
It can easily be installed on all the major device like IOS/Android.
The confidential and personal credentials of Firebase SDK can't be made public on GitHub.
So before starting the project do consider theses installation instructions:

Installation Instructions:

  1. Make sure lates NodeJS version is available
  2. Run npm install
  3. Install expo-cli using npm install -g expo-cli
  4. Create a file named firebaseConfig.js inside constants folder and paste in your own FireBase credentialsthat you get after creating your account on Firebase. The file should be structured exactly like this:
import * as firebase from "firebase"; 
const config = { apiKey: "***YOUR_KEY",
authDomain:"***YOUR_PROJECT_DOMAIN"` 
databaseURL: "***YOUR_DB_URL***", 
projectId: ""***PROJECT_ID***"", 
appId:"**APP_ID***", }; 
firebaseConfig = firebase.initializeApp(config); export default firebaseConfig;

For help visit: https://firebase.google.com/ 5. For starting the app after completing the above steps, run: npm start to open up the expo-client in the browser then scan the QR code to download and run the application locally on your IOS/Android devices or emulators.

Additional Setup:

Before testing out with the application, Add some Authenticated Users(required for signing in to the application) to Firebase. Example: email: [email protected] password: 123456 userId: DZYztGsP6aZMc1kMg43QirCZSM13 (Unique Id automatically generated by Firebase Authentication)

The Firebase live database used in this application has a well defined schema. Do consider using this schema for the proper functioning of the Application.

Schema Example(Refer to /screenshots folder):

{
  "labs" : {
    "10" : {
      "name" : "ChemicalX"
    },
    "12" : {
      "name" : "RadioLab"
    },
    "14" : {
      "name" : "General Diagnostics"
    }
  },
  "technicians" : {
    "DZYztGsP6aZMc1kMg43QirCZSM13" : {
      "lab" : 14,
      "userName" : "[email protected]"
    },
    "VLfOfracJ4USAXqGJMgGGxk32ku1" : {
      "lab" : 10,
      "userName" : "[email protected]"
    },
    "ihWTMxWv8jfMcV68q5NG2WDxZA72" : {
      "userName" : "[email protected]"
    },
    "wrPfdOdrfUcOkIN2JMllVhIBA3e2" : {
      "lab" : 12,
      "userName" : "[email protected]"
    }
  },
  "volunteers" : {
    "1001" : {
      "labsAccessed" : {
        "10" : {
          "25-05-2020-8-50-26" : {
            "duration" : "30",
            "phone" : "9191991999",
            "reason" : "Reason-1",
            "technician" : "VLfOfracJ4USAXqGJMgGGxk32ku1"
          },
          "25-05-2020-8-53-26" : {
            "duration" : "30",
            "phone" : "9191991999",
            "reason" : "Reason-2",
            "technician" : "VLfOfracJ4USAXqGJMgGGxk32ku1"
          },
          "25-05-2020-9-54-2" : {
            "duration" : "30",
            "phone" : "9191991999",
            "reason" : "Confdential",
            "technician" : "VLfOfracJ4USAXqGJMgGGxk32ku1"
          }
        },
        "12" : {
          "4-02-2020" : {
            "lab" : 12,
            "reasons" : "Reason-1",
            "technician" : "aaafff"
          }
        }
      },
      "phone" : 9191991999
    },
    "1003" : {
      "labsAccessed" : {
        "10" : {
          "20-04-2020-12-00-20" : {
            "duration" : 20,
            "reason" : "Confidential",
            "technician" : "hhhhkkk"
          }
        },
        "14" : {
          "25-05-2020-9-5-23" : {
            "duration" : "23",
            "phone" : "777777722",
            "reason" : "Super-secret",
            "technician" : "DZYztGsP6aZMc1kMg43QirCZSM13"
          }
        }
      },
      "name" : "Dr Harley Quinn",
      "phone" : 777777722
    }
  }
}

labauth's People

Contributors

chiragsrvstv 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.