This project aims to digitize the booking system for bus companies operating in Rwanda and neighboring countries. It includes a web app for bus companies and a mobile app for clients to book seats, manage trips, and handle payments.
# Velo-Tick - Ticket Booking Management System
Velo-Tick is a ticket booking management system designed to digitize the booking process for bus companies operating in Rwanda and neighboring countries. It consists of two main components: a web application for bus companies to manage trips and administrative tasks, and a mobile application for clients to book seats, manage trips, and handle payments.
## Features
### Web App for Bus Companies
- Manage bus trips and schedules
- Track seat bookings and availability
- Generate and manage ticket QR codes
- Administer users with roles and permissions
- Access booking analytics and reports
### Mobile App for Clients
- Search and book bus seats
- View and manage trip bookings
- Process secure payments
- Validate tickets via QR code scanning
- Manage user profiles
### Technologies Used Backend
- Laravel 12: PHP framework for the backend
- MySQL: Database hosted on freesqldatabase.com
- Cloudinary: Storage for ticket QR codes
- Spatie Roles and Permissions: User role and permission management
- Docker: Containerization for deployment
### Mobile App
- Flutter: Cross-platform mobile app framework
- Dio: API request handling
- GetX: Routing management
- Riverpod: State management
## Deployment
- Backend hosted on Render
- Docker image available on Docker Hub
## Repositories
- Backend & Mobile App: github.com
- Web App: Muhinde234/Velotick-fn (by Muhinde Igirimpuhwe Dositha)
## Installation Instructions
### Prerequisites
- PHP and Composer (for Laravel)
- Flutter SDK (for the mobile app)
- Docker (optional, for containerized deployment)
- Git (for cloning repositories)
### Backend Setup
1. Clone the repository:
```bash
git clone github.com
```
2. Navigate to the backend directory:
```bash
cd velo-tick-flutter-laravel/backend
```
3. Install PHP dependencies:
```bash
composer install
```
4. Configure environme …