
A Flask and scikit-learn web app that checks drug-drug interactions across 191,000+ DrugBank pairs and classifies severity as Major, Moderate, or Minor. When a pair is not in the database, a trained Random Forest model predicts the severity.
Python | Flask | scikit-learn | Random Forest | XGBoost | TF-IDF Vectorizer | pandas | NumPy | SciPy | joblib | HTML5 | CSS3 | JavaScript | DrugBank Dataset
The Drug Interaction Alert System is a machine learning powered web application that helps you check whether two medicines are safe to take together. It searches a real dataset of 191,541 drug interactions sourced from DrugBank, and instantly tells you how risky a combination is by labelling it as Major, Moderate, or Minor. If a drug pair is not present in the database, a trained Random Forest model steps in and predicts the severity on its own, so the system always returns a useful answer.
This project is built for students who want something more meaningful than a basic CRUD app. It touches real healthcare data, a complete machine learning pipeline, and a clean web interface, which makes it a strong choice among AI and machine learning final year projects for BCA, MCA, B.Tech CSE, and B.Sc IT students.
Every search first runs against the CSV lookup table that holds the 191K known interactions. If the pair is found, the app returns the original interaction description along with a rule based severity level. If the pair is not found, the request is passed to the machine learning model, which uses TF-IDF features built from interaction descriptions along with encoded drug names to predict the severity. The result page clearly marks whether the answer came from a Database Match or an ML Prediction, so the output stays transparent.
The included Jupyter notebook walks through the entire workflow. Drug names are cleaned and lowercased, interaction descriptions are converted into 5,000 TF-IDF features, and drug names are label encoded into a combined sparse feature matrix. Three classifiers are trained on an eighty twenty stratified split, namely Random Forest, XGBoost, and Logistic Regression, and the best performing model is saved as a pickle file for the web app to load. The notebook also produces clear visualisations such as the top interacting drugs, an interaction type distribution, a confusion matrix, and a drug interaction network graph.
This project covers three areas that examiners genuinely value, namely real data handling, applied machine learning, and full stack web development. It is easy to demo live, the results are explainable, and the healthcare angle gives your viva discussion real depth. If you like this kind of data driven build, you may also want to look at our Traffic Accident Severity Prediction project, which uses a similar Flask and machine learning approach.
The system uses Python and Flask on the backend, scikit-learn and XGBoost for the models, TF-IDF for feature engineering, and pandas with NumPy for data processing. The frontend is built with clean HTML5, CSS3, and vanilla JavaScript, so there are no heavy framework dependencies to manage during setup.
You receive the complete source code, the trained model files, the dataset, and the training notebook. You can buy it directly and start running it the same day. To explore more options, browse all our final year projects with source code.
Note: This project is intended for educational and research purposes. The interaction data is sourced from DrugBank. Always consult a qualified healthcare professional before making any medical decision.
Add any of these professional upgrades to save time and impress your evaluators.
We'll install and configure the project on your PC via remote session (Google Meet, Zoom, or AnyDesk).
1-hour live session to explain logic, flow, database design, and key features.
Want to know exactly how the setup works? Review our detailed step-by-step process before scheduling your session.
Fully customized to match your college format, guidelines, and submission standards.
Need feature changes, UI updates, or new features added?
Charges vary based on complexity.
We'll review your request and provide a clear quote before starting work.