The Pillport App is a comprehensive Pharmacy Management System comprising a set of native Android applications for customers and administrators, powered by a Python Flask REST API backend using SQLite.
This repository contains three main components:
- PillPort (Customer Android App)
- Pillport_Admin (Admin Android App)
- pillport_Backand (Python Flask Backend)
A native Android application built for users to browse products, manage their orders, and engage with the pharmacy system.
- Language: Kotlin
- UI Toolkit: Jetpack Compose (
Material 3) - Architecture & DI: Dagger Hilt
- Networking: Retrofit2 & OkHttp (Gson for parsing)
- Image Loading: Coil
- Local Storage: DataStore Preferences
- Mapping & Location: Google Maps Compose, Google Places SDK, Play Services Location
- Minimum SDK: 27
- Target SDK: 36
A native Android application designed for pharmacy administrators to manage products, categories, orders, and user stock.
- Language: Kotlin
- UI Toolkit: Jetpack Compose (
Material 3) - Architecture & DI: Dagger Hilt
- Networking: Retrofit2
- Image Loading: Coil
- Local Storage: DataStore Preferences
- Minimum SDK: 27
- Target SDK: 35
A lightweight REST API managing the primary business logic, database operations, and authentication.
- Framework: Python / Flask
- Database: SQLite (
pharma.db) - Key Modules:
userAuthentication: User signup/login logic.addOperation,updateOperation,getOperation: CRUD operations for orders, products, and users.createTableOperation: Automated mapping and DB initialization.
- Authentication:
/signup,/login,/updatepassword,/updateuserprofile - Products:
/allproducts,/addproduct,/addproductcategory,/allproductcategory - Orders:
/addorder,/allorders,/approveorder - User & Stock Management:
/allusers,/userinfo,/userstock,/allusersstockproducts
- Navigate to the backend directory:
cd pillport_Backand - Install dependencies (e.g., Flask) if not already installed.
- Run the server:
Note: Upon first run, the SQLite database table architecture will be generated automatically at
python main.py
pharma.db.
- Open the respective folder (
PillPortorPillport_Admin) in Android Studio. - Synchronize Gradle files.
- Make sure to update the Base URL in your Retrofit network configuration to point to your running Flask server's IP address.
- Build and Run on your emulator or physical Android device.