Skip to content

tanjimhasan781/DocQ

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

DocQ

DocQ is an iOS application designed to bridge the gap between patients and doctors. The app allows patients to ask health-related questions anonymously and enables registered doctors to respond with helpful advice. It ensures privacy and facilitates convenient communication.

Features

For Patients:

  • Anonymous Question Submission: Patients can ask questions about their health concerns without revealing their identity.
  • View Doctor Profiles: A list of available doctors is displayed for reference using JSON parsing.
  • User-Friendly Interface: Easy-to-navigate UI for submitting and browsing questions and answers.

For Doctors:

  • Reply to Questions: Doctors can provide answers and guidance to patient queries.
  • Secure Authentication: Only registered doctors can participate in the platform.

General Features:

  • Firebase Authentication: Ensures secure login and registration for both patients and doctors.
  • Firebase Realtime Database: Efficiently stores user data, questions, and replies.
  • JSON Parsing: Displays a list of available doctors to patients using structured data.

Technologies Used

  • Swift: Primary programming language for the iOS app.
  • Firebase Authentication: To authenticate users securely.
  • Firebase Realtime Database: For storing and retrieving data in real time.
  • JSON Parsing: To parse and display available doctor profiles.
  • UIKit: For building the app’s user interface.

Getting Started

Prerequisites

  • Xcode (Version 14.0 or higher)
  • iOS 14.0 or higher
  • Firebase project configured (visit Firebase Console)

Installation

  1. Clone the repository:

    git clone https://github.com/NotSOgenius69/DocQ.git
  2. Open the project in Xcode:

    open DocQ.xcodeproj
  3. Install CocoaPods dependencies (if applicable):

    pod install
  4. Set up Firebase:

    • Add your GoogleService-Info.plist file to the project.
    • Configure Firebase in the AppDelegate:
      import Firebase
      
      @main
      class AppDelegate: UIResponder, UIApplicationDelegate {
          func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
              FirebaseApp.configure()
              return true
          }
      }
  5. Build and run the project on a simulator or physical device.


Firebase Configuration

Authentication

  • Enable Email/Password Authentication in the Firebase Console.

Realtime Database

  • Structure:
    {
      "users": {
        "uid1": {
          "role": "patient",
          "name": "Anonymous"
        },
        "uid2": {
          "role": "doctor",
          "name": "Dr. John Doe",
          "specialization": "Cardiology"
        }
      },
      "questions": {
        "question1": {
          "user": "uid1",
          "content": "What are the symptoms of diabetes?",
          "replies": {
            "reply1": {
              "user": "uid2",
              "content": "Common symptoms include frequent urination, excessive thirst, and fatigue."
            }
          }
        }
      }
    }

App Screens

1. Login / Signup Screen

  • Secure authentication for both patients and doctors.
Login Register

2. Home Screen (Patients)

  • Allows patients to post questions anonymously. Ask a question

  • Displays a list of their questions and doctor replies.

Questions Asked

3. Home Screen (Doctors)

  • Displays questions posted by patients.
Patient Questions
  • Enables doctors to respond to questions.
Reply to question

4. Available Doctors

  • Shows a list of available doctors parsed from JSON.
Available Doctors

Contributing

Contributions are welcome! To contribute:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-name).
  3. Commit your changes (git commit -m 'Add feature name').
  4. Push to the branch (git push origin feature-name).
  5. Open a Pull Request.

About

DocQ is an iOS app that empowers patients to ask health-related questions anonymously while allowing registered doctors to provide thoughtful and secure responses. Built with Firebase and SwiftUI, DocQ ensures privacy, ease of use, and meaningful communication between patients and doctors.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Contributors

Languages