Name | |
---|---|
Daksha Ladia | [email protected] |
Nikhil Anand | [email protected] |
Shivam Raj | [email protected], [email protected] |
Snigdha Ansu | [email protected], [email protected] |
Rakshita Srivastava | [email protected] |
Feature | Details | Assigned To | Remarks |
---|---|---|---|
Login | Includes authentication | Rakshita | 1. Implemented role-based login 2.Implemented form field validations to ensure correct input. 3. Implemented password hashing to ensure password security and HIPAA standards |
Sign up | Includes authentication | Rakshita | 1.Implemented user role selection, allowing users to choose between registering as a doctor or a patient. 2.Set up form validation to ensure all required fields are filled and the email is in the correct format. 3. Added password validation to check for minimum length, capital letters, small letters, numbers, and special characters. 4. Included a file upload feature for doctors to upload their license files. 5. Implemented conditional rendering to display different form fields and messages based on the selected user role. 6. Ensured that user data is securely handled and managed within the context of the application. |
MFA functionality for Login and Signup | Multi-factor authentication using google authenticator | Rakshita,Nikhil | 1. Researched the best fit to integrate OTP authentication for login and signup. 2. Created models, routes and services for the functionality |
Frontend setup | Shivam | 1. Setup the folder architecture for frontend and backend 2. integrated webpack and babel to transpile the jsx code for the browser 3. Created package.json and added initial dependencies so that it works in every machine 4. Integrated cypress to test frontend changes 5. Initialised routing in React 6. Lots of PR reviews and comments do that all our team code is structured and clean. 7. Integrated antd react component library to have baseline UX design. Wrote different sample code files in different folder so that others can understand the architecture. |
|
Backend setup | fastapi with MongoDB |
Nikhil | 1. Added fastapi and connected to the Mongo database. 2. Added the folder structure for the backend setup 3. Added intial models for patient and doctor with their respective routers, services and utility functions. 4. Setup Mongo cloud DB, research authentication and setup and network/database access for other developers. |
Navbar | antd | Shivam | Created navbar to be used by different pages in the app |
Navbar | antd | Rakshita | Updated the navbars to not be displayed in the login, registration and the mfa pages. |
Patient Page | Data fetch from backend | Shivam | 1. Fetched data from backend regarding the particular email of patient 2. Displayed Calendar to scheule and appointment which is filtered to the availability set up by the doctor. 3. Fetched different doctor in the card view and populated the data. |
Doctor’s Page | Appointment Scheduling, Setting the Calendar & Data fetch from backend | Daksha | 1. Design the doctor's page to include doctor details which is generated by fetching from the database. 2. Set user context to get correct doctor data. 2. Add Calendar, using antd architecture, to allow the doctor to schedule an appointment. 3. Save the doctor's availability in the database, which is later fetched on the patient's page to show doctor's availability. 4. Designed the Doctor page using antd architecture. |
Chat Assistance | Open AI | Daksha | 1. Configure Gemini API for Chat Assistant. 2. Generated required prompts for the assistant so that it acts like a healthcare assistant. 3. Add Disclaimer/Note at the end of each AI generated response. 4. Designed the chat portal page using antd architecture. 5. The chat is configured to have back-to-back conversations. |
Payment Portal | PayPal | Snigdha | 1. Integrated with Paypal Sandbox environment to enable payments for patients to schedule appointment with a doctor 2. Setup Sandbox app and personal accounts for seamless payments in sandbox environments from user to merchant 3. Created modal to show payment status message to user before redirecting to Patient page |
Email notification | Fast Mail | Snigdha | 1. Integrated with mailtrap.io to send emails to users via an SMTP server. 2. This enables real time updates to users on any transcations performed through SchedulCare app |
Appointment Details | Push data to backend | Snigdha | Save appointment details of patient when he/she schedules an appointment with a doctor, such as patient detail, doctor detail and transaction date. Save is performed only after transaction is successful |
Backend tests | pytests | Snigdha | Setup and written backend tests for python services |
Backend development | Fast API | Everyone will do their own backend | Shivam: 1. Wrote backend routes, service and models for patient page and adding doctor. 2. Was actively reviewing PRs to keep the backend code structured. Snigdha : 1. Wrote the backend routes, services and models for payemnt page, email notification service and adding appointment details 2. Actively reviewed PRs to ensure code is clean and well structured. Daksha: 1. Actively reviewed PRs and gave comments. 2. Set the user context for Patient Page. Wrote the Chat and Doctor's service, router, components, pages and required endpoints. Nikhil: 1. Added models and services for patient, doctor and location 2. Setup utility functions like Responses, Status and serializing mongo objects and Mongo authentication Rakshita: 1.Added models and services for patient, doctor and MFA authentication |
Map view | Google Maps Embed API, Nominatim API, Open Location Code API | Nikhil | 1. Setup Google Maps Embed API on the front-end 2. Integrate Nominatim API to fetch search results. 3. Integrate the search results to work with Google Maps API to show up in search and Directions ( OpenLocationCode integration). |
Email notification | Fast Mail | Snigdha | |
Cypress tests | End-to-end | Every team member | |
Video editing | merge the videos | Shivam, Snigdha |
- Ensure you are on the
main
branch:git checkout main
- Pull the latest changes:
git pull origin main
- Create a new branch for your feature or bug fix:
git checkout -b your-branch-name
- Push your branch to the remote repository:
git push origin your-branch-name
- Navigate to the repository on GitHub.
- Click on the "Compare & pull request" button next to your branch.
- Fill out the PR template with details about your changes.
- Submit the pull request.
Your pull request will be reviewed, and feedback may be provided. Once approved, it will be merged into the main
branch.