A comprehensive Scholarship Management System that allows students to view and apply for scholarships, and enables various administrative bodies (University, College, School, School Board) to manage scholarship requests and notifications.
- Framework: Python Flask
- Database: MySQL
- Dependencies:
mysql-connector-python,flask,qrcode,pillow(for QR generation) - Architecture: Blueprint-based modular structure
- Language: Java
- UI: XML Layouts
- Network:
HttpURLConnection(CustomJsonReqfor API calls) - Minimum SDK: 21 (Lollipop)
- Target SDK: 32 (Android 12)
web-backend/: Contains the Flask server, blueprints, and database logic.android-app/: Android Studio project for the student/user application.database/: Contains the SQL schema file (scholarship_db.sql).
- Database Configuration:
- Import the
database/scholarship_db.sqlfile into your MySQL server. - Adjust database credentials in
web-backend/database.pyif necessary.
- Import the
- Install Dependencies:
pip install -r web-backend/requirements.txt
- Run the Server:
The server will run on
python web-backend/main.py
http://0.0.0.0:5008.
- Open the
android-app/folder in Android Studio. - Update the IP address in the
Ipsettingsclass (if applicable) to point to your machine's local IP where the backend is running. - Build and run the app on an emulator or a physical device.
The Android app communicates with the backend via JSON over HTTP. Major endpoints include:
| Endpoint | Method | Description |
|---|---|---|
/api/logins |
GET | User authentication |
/api/viewscholarship |
GET | List available scholarships |
/api/sendrequest |
GET | Apply for a scholarship |
/api/Viewrequest |
GET | Check application status |
/api/Viewnotification |
GET | View system notifications |
/api/complaint |
GET | Send student complaints |
- Student Login: Secure authentication for students.
- Scholarship Browsing: View various scholarships with categories.
- Application Tracking: Real-time status updates on scholarship requests.
- Notifications: Stay updated with the latest scholarship news.
- Complaint Management: Direct communication channel for issues.