PatientDB
"PatientDB is a simple web app that stores patient information, able to edit the information,
and able to query the database to display the patient details."
⚡
Demo
Querying Patient, Adding and Deleting Diagnosis
🧮
Database Model
- Patient and Diagnosis have a Many to Many relationship.
- Patient and History have a One to One relationship.
🥉
Coverage
Module | statements | missing | excluded | branches | partial | coverage |
---|---|---|---|---|---|---|
app\__init__.py | 28 | 14 | 0 | 2 | 1 | 50% |
app\fake.py | 18 | 2 | 0 | 2 | 0 | 90% |
app\main\__init__.py | 3 | 0 | 0 | 0 | 0 | 100% |
app\main\errors.py | 11 | 2 | 0 | 0 | 0 | 82% |
app\main\forms.py | 23 | 0 | 0 | 0 | 0 | 100% |
app\main\views.py | 182 | 13 | 0 | 32 | 9 | 89% |
app\models.py | 92 | 72 | 0 | 20 | 2 | 30% |
app\search.py | 18 | 12 | 0 | 10 | 3 | 32% |
Total | 375 | 115 | 0 | 66 | 15 | 68% |
🦾
Technologies Used:
- Flask
- Flask-SQLAlchemy
- PostgreSQL
- Elasticsearch
- WTForms
- JQuery
- SASS
📂
Resources
Flask Miguel Grinberg Tutorial
Integration of elasticsearch to PostgreSQL. Since elasticsearch returns string results, the tutorial helped me return the results as objects of the Patient model with pagination. It also includes how to update the index on every commit by adding event listeners after and before commits to trigger functions that update the index.
Youtube channel that helped me understand how to use JQuery to create my own functions that apply to my use case.
Learned how to implement flexbox and SASS for better code organization and easy implementation of CSS.