ReCura is an integrated health monitoring system designed to provide real-time insights into patient health metrics and predict readmission risk. The platform uses machine learning models to analyze patient data and provide healthcare professionals and patients with actionable information.
Project Architecture
Application Workflow
| Admin Dashboard | Patient Dashboard |
|---|---|
![]() |
![]() |
| Healthcare provider interface with analytics and model training capabilities | Patient interface showing real-time personalized health metrics and risk assessment |
The Project follows a three-tier architecture:
- Dataset Search: Collection of patient health records from various sources
- Data Pipeline: Processing raw data into structured formats ready for analysis
- Random Data Generation: Temporary data creation for development and testing
- Implementation of multiple prediction algorithms:
- Logistic Regression
- Random Forests
- Decision Trees
- Cloud and local server options for data storage
- Real-time data collection and persistence
- Secure storage of patient records
- Patient Dashboard: Personalized health metrics visualization
- Admin Dashboard: Healthcare provider interface with comprehensive analytics
- Authentication: Secure login system for both patients and administrators
- Frontend: Streamlit for responsive web interface
- Backend: Python data processing and ML pipeline
- Database: MongoDB for flexible NoSQL storage
- Data Processing: Pandas, NumPy for efficient data manipulation
- Machine Learning: Scikit-learn for predictive modeling
- Visualization: Plotly, Matplotlib for interactive charts
- Real-time health metrics monitoring
- Readmission risk prediction using multiple ML models
- Interactive data visualization
- Dual interface for patients and healthcare administrators
- Secure authentication system
- Cloud-based data storage
ReCura requires the following environment variables:
MONGODB_URI: Connection string for your MongoDB database
Create a .env file in the project root with these variables before running the application.
The original Atlas cluster used by this project no longer resolves and appears to have been deleted. Create a new Atlas deployment as follows:
-
Sign in at MongoDB Atlas and create a project.
-
Create a free
M0database deployment in a nearby region. -
Under Database Access, create a dedicated database user with read/write access. Do not reuse your Atlas account password.
-
Under Network Access, add your current IP address for local development. For Streamlit Community Cloud, add the network access required by your deployment and use a strong, unique database password.
-
Click Connect → Drivers → Python, then copy the
mongodb+srv://URI. -
From the project root, create the local configuration:
cp .env.example .env
-
Replace the placeholders in
.env. If the password contains reserved URL characters, URL-encode it. Never commit.env. -
Test the connection and generate a sample record from either the project root or the worker directory:
python mongodb_worker/mongodb_store_data.py
The script now checks the Atlas connection before prompting for the interval and patient ID. Stop continuous generation with
Ctrl+C.
For Streamlit Community Cloud, add MONGODB_URI in the app's Secrets
settings instead of uploading .env.
- Clone the repository
- Install dependencies:
pip install -r requirements.txt - Configure MongoDB connection
- Run the application:
streamlit run app.py - Run random data generation for a specific user ID:
python mongodb_worker/mongodb_store_data.py
ReCura: One Health Dashboard - Proactive, precise, and perfectly tailored health management.



