Safraa is a product that provides travel bus tickets booking service. It’s on a mission to enable digital transformation in the Sudanese bus travel sector by making bus travel easy, safe, and affordable.
The product consists of two integrated applications, namely:
- Safraa Passenger, where travelers browse, book, and pay for bus tickets
- Safraa Bus, where bus company agents manage trips, review bookings, and confirm payments.
- Find Trips: Browse and filter trips of different destinations and dates.
- Book a Seat: Book and reserve your preferable seat(s).
- Get Tickets: Pay to confirm reservation and receive your e-ticket.
The app adopts a MVVM (Model-View-Viewmodel) clean architecture with unidirectional data flow. Model layer consists of data repositories and use-cases when needed. Viewmodels are utlilized per app screen. Presentation (View) layer incorporates a single Activity scheme with multiple fragment management using navigational components.
- Android Navigation.
- Andriod Workmanager.
- Room Database.
- Kotlin Coroutines.
- Hilt Dependency Injection.
- Firebase (Authentication, Firestore, Messaging).
- Facebook Shimmer.
- GSON.
- Timber.
- Mixpanel.