A full-stack web application for student hostel booking, built to streamline the accommodation process for university students in Kenya. Students can register, browse available rooms, make payments via M-Pesa, and receive SMS confirmations without visiting the hostel in person.
Kawasi was developed as a practical solution to the manual and time-consuming hostel booking processes common at Kenyan universities. The system handles the complete booking workflow from registration through to payment confirmation.
Student Portal
Admin Portal
KAWASI_BOOKING_SYSTEM/
├── app.py # Flask application and all routes
├── sms.py # SMS notification helper
├── nav.html # Navigation template
├── static/ # Bootstrap CSS and static assets
└── templates/ # HTML templates (login, register, booknow, houses, reviews, etc.)
Prerequisites: Python 3.8+, MySQL
git clone https://github.com/melissaangwenyi/KAWASI_BOOKING_SYSTEM.git
cd KAWASI_BOOKING_SYSTEM
pip install flask pymysql requests
Create a MySQL database named project and set up the required tables (register, booknow, housedetails, reviews).
Configure your credentials in app.py:
# Database
connection = pymysql.connect(host="localhost", user="root", password="your_password", database="project")
# M-Pesa (replace with your Daraja API credentials)
consumer_key = "your_consumer_key"
consumer_secret = "your_consumer_secret"
Run the application:
python app.py
Visit http://localhost:5000
Melissa Angwenyi — melissaangwenyi276@gmail.com