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.
- 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.
- Reply to Questions: Doctors can provide answers and guidance to patient queries.
- Secure Authentication: Only registered doctors can participate in the platform.
- 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.
- 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.
- Xcode (Version 14.0 or higher)
- iOS 14.0 or higher
- Firebase project configured (visit Firebase Console)
-
Clone the repository:
git clone https://github.com/NotSOgenius69/DocQ.git
-
Open the project in Xcode:
open DocQ.xcodeproj
-
Install CocoaPods dependencies (if applicable):
pod install
-
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 } }
-
Build and run the project on a simulator or physical device.
- Enable Email/Password Authentication in the Firebase Console.
- 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." } } } } }
- Secure authentication for both patients and doctors.
-
Displays a list of their questions and doctor replies.
- Displays questions posted by patients.
- Enables doctors to respond to questions.
- Shows a list of available doctors parsed from JSON.
Contributions are welcome! To contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature-name). - Commit your changes (
git commit -m 'Add feature name'). - Push to the branch (
git push origin feature-name). - Open a Pull Request.
