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.
- 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
- Search and book bus seats
- View and manage trip bookings
- Process secure payments
- Validate tickets via QR code scanning
- Manage user profiles
- 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
- Flutter: Cross-platform mobile app framework
- Dio: API request handling
- GetX: Routing management
- Riverpod: State management
- Backend hosted on Render
- Docker image available on Docker Hub
- Backend & Mobile App: https://github.com/nrprosper/velo-tick-flutter-laravel
- Web App: https://github.com/Muhinde234/Velotick-fn (by Muhinde Igirimpuhwe Dositha)
- PHP and Composer (for Laravel)
- Flutter SDK (for the mobile app)
- Docker (optional, for containerized deployment)
- Git (for cloning repositories)
- Clone the repository:
git clone https://github.com/nrprosper/velo-tick-flutter-laravel.git
- Navigate to the backend directory:
cd velo-tick-flutter-laravel/backend
- Install PHP dependencies:
composer install
- Configure environment variables:
- Copy
.env.example
to.env
- Update
.env
with your MySQL database credentials (from freesqldatabase.com) and Cloudinary API keys
- Copy
- Run database migrations and seed data:
php artisan migrate --seed
- Start the Laravel server:
php artisan serve
Alternatively, use Docker:
docker pull nprosper/velotick-backend
docker run -p 8000:8000 nprosper/velotick-backend
- Clone the web app repository:
git clone https://github.com/Muhinde234/Velotick-fn.git
- Navigate to the directory:
cd Velotick-fn
- Follow specific setup instructions in the repository’s
README
(e.g., install dependencies and start the server).
- Ensure Flutter is installed and configured.
- Navigate to the mobile app directory:
cd velo-tick-flutter-laravel/mobile
- Install Flutter dependencies:
flutter pub get
- Run the app on an emulator or device:
flutter run
- Launch the app on your device
- Register or log in
- Search for available trips, book seats, and manage your bookings
- The backend is deployed on Render: https://velotick-backend.onrender.com
- The MySQL database is hosted on https://freesqldatabase.com
- Dockerized backend is available on Docker Hub
We welcome contributions! To get started:
- Fork the repository
- Create a branch for your feature or fix (
git checkout -b feature-name
) - Commit your changes (
git commit -m "Add feature
) - Push to your branch (
git push origin feature-name
) - Open a pull request with a detailed description
- Prosper NISHIMWE RUKUNDO - prosper.rk1@gmail.com
- Muhinde Igirimpuhwe Dositha - igirimpuhwedositha@gmail.com