- Notifications
You must be signed in to change notification settings - Fork0
RxStore is a distributed information system for patient prescription management that is location agnostic.
License
chinasatokolo/RxStore
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
RxStore is a distributed information system for patient prescription management that is location agnostic. RxStore currently only handles prescription management, but is capable of handling patient medical information provided enough resources and security.
- Insert a footer into base.html that uses Bootstrap 3
- Figure out why "- [ ]" did not work
- Update database models for patient to remove primary_physician and migrate
RxStore follows theChord protocol to the best of our abilities to ensure that information can be found efficiently and it is capable of handling node joins and departures (failures).
RxStore allows for prescription management across patients, doctors, and pharmacists. Patients have full read access to their prescription data but are unable to change any of their prescription information. Doctors have read access to their patients' data but cannot change patient information except for adding new prescriptions. Pharmacists only have read access to patient information and limited write access to prescriptions filled at the pharmacist's respective pharmacy. Pharmacists only have write access when it pertains to updating when and how prescriptions have been filled.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
git clone https://github.com/DarianNwankwo/RxStorecd RxStore
WeRECOMMEND using a virtual environment to manage your instance of RxStore. Issue the command below to setup your local environment. If you do not wish to do so, skip this step.
python3 -m venv <virtual_environment_name>source <virtual_environment_name>/bin/activate
When you are done working in your environment, be sure to deactivate your virtual environment.
deactivate
RxStore's backend was developed using Python 3.6.5 and the Flask microframework. In order to run the system locally, install all of the packages inrequirements.txt using the following command.
pip install -r requirements.txt
Once the prerequisites have been installed, it is now time to setup your development environment. In order to run the app, issue theflask run command from the command line. This command, however, relies on an environment variable namedFLASK_RUN. This environment variable needs to be set prior to issuing theflask run command.
This can be rather bothersome, so to mitigate this problem, I have installed the packpagepython-dotenv. More information about that package can be foundhere. This package allows us to create a file.flaskenv and each time we runflask run it uses this file to set the appropriate environment variables.
export FLASK_APP=rxstore.pyflask run
(NOTE) Development was done on macOS Mojave version 10.14. For other operating systems, it is expected that you understand how to set your environment variables appropriately.
RxStore stores information locally using SQLite, which has its own limitations, but is enough for proof-of-concept. If you decide to change the models to fit your preferences, be sure to track those changes to the database and maintain an updated migration directory. More information on doing so can be foundhere.
- Flask - The web framework used
Please readCONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
- Darian Nwankwo -Initial work -DarianNwankwo
- Chinasa Okolo -Initial work -ChiNasa511
This project is licensed under the MIT License - see theLICENSE.md file for details