Veterinary Drug Calculator

The Veterinary Drug Calculator is a combination of four separate components to deliver a product that works for a variety of target audiences. The purpose of the project is to calculate an appropriate dosage of drug to given to a specific animal of a certain weight. The same drug will have different dosage requirements based on the animal species, and the available concentration of the drug. Some goals of the project are to have: - A simple user interface and experience for calculating and updating drugs. - Accurate drug information that is easy to edit and audit for accuracy - A calculator mobile app that can be used anywhere there is internet. The four parts of the project are as follows: (1) the PostgreSQL database containing the animal and drug data. (2) the Express.js application server to interface between the Database and frontends (3) the React-based web panel for an administrator to view and modify the database without needing to understand SQL or HTTP requests (4) the Flutter-based mobile app that holds the calculator for calculating drug dosages retrieved from (2). Flutter enables Android and iOS application bundles. (1) and (2) go together to form the backend. (3) and (4) are frontends that hook into the backend depending on the target audience. A normal user would only use (4), but an administrator would also need (3). One reason a database such as Postgres was chosen was because of the need to share data between (3) and (4). A typical user would just need a calculator that has the drug and animal information needed for the calculator to work. This calculator is envisioned as a mobile app available for Android or iOS. The drug information, however, is subject to change as new drugs are added over time, or the recommended dosage for a particular animal changes. Therefore, the drug data needs to be modifiable. This is why a web-based administrator panel is available to modify the drug information. The drug information is stored in relational database following a schema designed to minimize repetition of data and make editing the relations between data simple. The database is exposed to the mobile app and web app through an OpenAPI scheme.

0 Lifts 

Artifacts

Name Description
Database Schema Diagram An entity relationship diagram of the database used for storing the drugs and animals used by the mobile app and web panel   Download
High-level Project Structure A drawing of the overall project structure. The user has the calculator on the mobile app. The administrator modifies drugs with the web panel. The drugs are stored in a database, which is exposed to the calculator and web panel through an api.   Download
Project Demo demonstration of the working project   Link