NextGen Patients is an open-source project aimed at making medical advice and consultation easily accessible. This project allows patients (users, or you and me :) ) to conveniently access healthcare service and consultations, directly from our smartphones.
Progressive Web App (PWA)
Next.js, Appwrite, Zustand, AntDesign, TailwindCSS, JavaScript, Jest, Docker.
- Next.js: For Frontend.
- Appwrite: For Backend.
- Zustand: For state management.
- AntDesign: For UI components (when necessary).
- TailwindCSS: For easy responsiveness.
- JavaScript: For writing functions.
- Jest: For Testing.
- Docker: For Containerization.
- Appointment Booking: Schedule online medical appointments with ease, eliminating the need for unecessary physical visits.
- Virtual Consultations: Connect with doctors through video calls, audio calls, or chat, to seek medical advice.
- Health Information DB: Store and access your personal health records, including medical history, prescriptions, and test results, all within the app.
- QR Code Ticketing: Generate QR Code Tickets for booked schedules (in case of physical visit to a hospital).
- Timers & Reminders: Set reminders for medication schedules.
- Health Tips and Resources: Recieve health tips, and resources.
- PWA: No need to install from Appstore or Playstore.
To contribute to NextGenPatients, you need to follow these steps:
-
Fork the repository by clicking the "Fork" button in the top-right corner of the GitHub page. This will create a copy of the project in your GitHub account.
-
Clone the forked repository to your local machine using the following command:
git clone https://github.com/chukusuccess/NextGenPatients.git
- Navigate to the project directory:
cd NextGenPatients
- While in the project directory, run the command below to install all dependencies needed in the project:
npm install
- Create a new branch for your changes, replace "branch-name" with a descriptive name that reflects the purpose of your changes:
git checkout -b branch-name
Now that you have the project set up locally and a branch for your changes, you can start making contributions. Here are a few important guidelines to follow:
-
Do not push directly to the main branch: The main branch is protected, and direct pushes are not allowed. Always work on your branch and submit changes via a pull request.
-
Keep your branch up to date: Before making any changes, ensure that your local main branch is up to date by pulling the latest changes from the upstream repository. You can do this with the following commands:
git checkout main
git pull origin main
Then, switch back to your branch:
git checkout branch-name
-
Create meaningful and atomic commits: Commit your changes with clear and concise messages that describe the purpose of each commit. Each commit should represent a logical, self-contained unit of work.
-
Be respectful and considerate: When interacting with other contributors, maintain a friendly and professional tone. Value the ideas and opinions of others, and be open to constructive feedback.
-
Follow the project's code style and conventions: Consistent code style makes collaboration easier. Familiarize yourself with the existing codebase and follow the established conventions.
Once you have completed your changes and tested them (as described in the next section), you are ready to submit a pull request (PR) to the main repository. To do this:
- Push your branch to your forked repository:
git push origin branch-name
-
Visit the main repository on GitHub and click on the "New Pull Request" button.
-
Select your branch (branch-name) from the dropdown on the right-hand side.
-
Provide a descriptive title and description for your pull request, explaining the purpose and scope of your changes.
-
If your pull request addresses any existing issue, mention it using the GitHub keywords.
-
Click on the "Create Pull Request" button to submit your contribution.
-
Be responsive to feedback and participate in the discussion around your pull request. Make any necessary changes or improvements based on feedback from maintainers and reviewers.
To maintain code quality, we use Jest as our testing framework. Before pushing any branches or changes, it is important to run the tests to ensure your modifications are functioning correctly and don't introduce regressions.
To run the tests locally, execute the following command:
npm test
Make sure that all the tests pass successfully before submitting your pull request.
Consistent code style is important for readability and maintainability. Please adhere to the established code style and conventions used in the project. If there are no specific guidelines, follow the prevalent patterns observed in the existing codebase.
If you have any questions or need assistance, feel free to reach out to the project maintainers or contributors. You can typically find contact information on the project's repository.
Below are resources you can use to get started with and learn more about the technologies that were used in this project.
- Next.js - Documentation.
- Appwrite - Documentation.
- Zustand - Documentation.
- AntDesign - Documentation.
- TailwindCSS - Documentation.
- JavaScript - Documentation.
- Jest - Documentation.
- Docker - Documentation.
This project is licensed under the GNU General Public License v3.0.
Thank you for your interest in contributing to NextGenPatients! We greatly appreciate your time and effort in making this project better. Your contributions will help us deliver a high-quality and reliable software solution.