My GitHub profile is under @shadowcodesinjava, and its bio says “Just wanna build projects and learn.” I use it to share projects across healthcare analytics, plant-disease classification, machine learning, resume analysis, and programming-language work.
On GitHub since 2025. 2 followers.
- MediAlert is predictive healthcare analytics using machine learning and Explainable AI, with Streamlit, scikit-learn, XGBoost, and SHAP.
My MediAlert repository is a Streamlit research and educational prototype for predicting type 2 diabetes, cardiovascular disease, and stroke from 15 routinely collected features. It assigns Low, Moderate, High, or Critical risk alerts and uses SHAP to explain factors that raise or lower a prediction and what changes would help most. It is trained on synthetic data, is not a medical device, and its alert cut-offs are illustrative rather than clinically validated.
I generate a reproducible synthetic cohort of 12,000 adults, with simulated outcomes based on established risk-factor directions and nonlinear interactions including age × smoking, BMI × family history, and sex × age. For each condition, I train Logistic Regression, Random Forest, and XGBoost on an 80/20 stratified split. Five-fold stratified cross-validation selects the champion by mean ROC-AUC; the held-out test set is reserved for reporting, and each model's decision threshold maximizes F1 on out-of-fold predictions.
My reported held-out test-set results are approximate; exact values are in models/metrics.json and on the Model Performance page.
| Condition | Champion | ROC-AUC | PR-AUC |
|---|---|---|---|
| Type 2 Diabetes | Random Forest | ≈0.87 | ≈0.69 |
| Cardiovascular Disease | XGBoost | ≈0.84 | ≈0.54 |
| Stroke | Logistic Regression | ≈0.84 | ≈0.39 |
The app includes patient assessment with three risk scores, rule-based clinical flags, SHAP waterfall explanations, what-if simulation, ranked recommendations, and downloadable HTML reports. Batch Screening ranks patients from an uploaded CSV, shows alert-tier counts, and supports individual explanations and result downloads. Other views compare model performance, explore SHAP global importance and dependence plots, and inspect outcome distributions, feature ranges, correlations, and raw data. Deterministic guideline checks run alongside the risk tiers and cover blood pressure, glycaemia, BMI, lipids, heart rate, smoking, and alcohol. Risk tiers are Low (<10%), Moderate (10–20%), High (20–40%), and Critical (≥40%).
I explain predictions in probability units: tree models use the interventional TreeExplainer, while Logistic Regression uses the permutation explainer. The models capture associations, not causes; what-if results show how the model responds and do not guarantee clinical outcomes. Real-world use would require external validation on real patient cohorts.
python -m venv .venv
.venv\Scripts\activate # Windows (macOS/Linux: source .venv/bin/activate)
pip install -r requirements.txt
streamlit run app.py
# Regenerate the dataset and retrain every model (about 1 minute)
python -m medialert.train
- The nine listed repositories are medialert, Plant-Disease-Classifier-XAI-Web-Application-, Bytenews, Machine-Learning, -AIR-Resume-Analyzer, Kotlin, java, rust, and leetcodedpp.
- Repository last-updated dates: medialert — 2026-10; Plant-Disease-Classifier-XAI-Web-Application- — 2026-09; Bytenews — 2026-09; Machine-Learning — 2026-07; -AIR-Resume-Analyzer — 2026-07; Kotlin — 2026-03; java — 2026-02; rust — 2025-12; leetcodedpp — 2025-08.
The profile descriptions do not provide project performance results or details beyond the repository names and descriptions.
- Their listed languages are Python (3), Java (1), JavaScript (1), Jupyter Notebook (1), and Kotlin (1).
- Plant-Disease-Classifier-XAI-Web-Application- is a deep-learning pipeline and interactive web application for diagnosing plant diseases from leaf imagery. It uses an EfficientNet-B0 backbone fine-tuned with Focal Loss and Grad-CAM heatmaps to explain predictions.
In this project, I classify healthy leaves and fungal or bacterial diseases across Pepper, Potato, and Tomato using 15 PlantVillage categories. I use a pretrained EfficientNet-B0 transfer-learning backbone with a custom head: Dropout(0.3) -> Linear(in_features, 256) -> ReLU() -> Dropout(0.3) -> Linear(256, 15). The project uses PyTorch and Torchvision.
My plant-disease classifier reports a validation accuracy of 99.66%.
My plant-disease classifier covers 15 leaf categories across Pepper, Potato, and Tomato.
I use Focal Loss with γ = 2.0 to focus training on hard-to-classify and underrepresented disease classes.
I use Grad-CAM from pytorch-grad-cam, targeting the final feature layer, to produce heatmaps alongside the original image and make prediction-driving regions more visible. The Streamlit interface supports drag-and-drop image uploads and Softmax confidence scoring, with warnings intended for ambiguous or low-confidence inputs.
I use PlantVillage benchmark images and Google/In-the-Wild images to examine domain shift between studio-captured data and real-world field conditions. The available project description gives no numerical result for in-the-wild performance or a confidence threshold for warnings.
- The listed Tomato categories are Bacterial Spot, Early Blight, Late Blight, Leaf Mold, Septoria Leaf Spot, Spider Mites (Two-spotted), Target Spot, Yellow Leaf Curl Virus, Mosaic Virus, and Healthy. Potato categories are Early Blight, Late Blight, and Healthy; Pepper (Bell) categories are Bacterial Spot and Healthy.
git clone https://github.com/your-username/plant-disease-classifier-xai.git
cd plant-disease-classifier-xai
python -m venv venv
# Windows
venv\Scripts\activate
# macOS/Linux
source venv/bin/activate
pip install torch torchvision streamlit pytorch-grad-cam opencv-python pillow numpy
# Place plant_disease_model.pth in the root directory before launching.
streamlit run app.py
- -AIR-Resume-Analyzer is a resume analyzer using ML LinearSVC.
- My Machine-Learning repository contains “my projects and the stuff i have learnt is here.”