Skip to content

Latest commit

 

History

History
63 lines (54 loc) · 15.3 KB

CONTRIBUTING.md

File metadata and controls

63 lines (54 loc) · 15.3 KB

Contributing

Current Contributors

Name Email
Daksha Ladia [email protected]
Nikhil Anand [email protected]
Shivam Raj [email protected], [email protected]
Snigdha Ansu [email protected], [email protected]
Rakshita Srivastava [email protected]

Tasks

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

Creating a Branch

  1. Ensure you are on the main branch:
    git checkout main
  2. Pull the latest changes:
    git pull origin main
  3. Create a new branch for your feature or bug fix:
    git checkout -b your-branch-name

Creating a Pull Request

  1. Push your branch to the remote repository:
    git push origin your-branch-name
  2. Navigate to the repository on GitHub.
  3. Click on the "Compare & pull request" button next to your branch.
  4. Fill out the PR template with details about your changes.
  5. 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.