Nbookini • Audiobook App


Overview
     Nbookini is a native Android audiobook application developed using Kotlin. The app provides users with access to a rich catalog of audiobooks in Arabic, English, and French, categorized by genre and author. It supports essential audiobook features such as bookmarking, progress tracking, offline playback, and more.
     As the only Android developer on the project, I was responsible for building both the customer and admin apps from scratch. I implemented clean architecture (MVVM), used modern Android libraries, and integrated a secure backend using Firebase services. The app includes features such as audio streaming via ExoPlayer, in-app purchases through a local payment gateway, user library management, and content administration tools for admins.
     This was my first time developing an audio-focused Android application and working with ExoPlayer. The project gave me hands-on experience in managing media playback, building a responsive and persistent audio player from scratch, and addressing audio apps challenges like background playback and user progress tracking. It was a great learning experience that expanded my skill set which allows me now to develop media-based applications on Android.

Technologies Used
◆ Platform: Android 
◆ Programming Language: Kotlin
◆ Backend: Firebase (Authentication, Firestore, Cloud Storage, Cloud Messaging)
◆ Architecture: MVVM with Jetpack Components
◆ Android Stack: ExoPlayer, Coroutines, Dagger Hilt, Jetpack Navigation, 
Paging 3, Coil 
◆ Payments: Satim API (Algerian e-payment gateway)  
◆ Completion Date: March 2023
 
Key Features
◆ User Authentication: Sign up, log in, and reset password using Firebase Authentication.
Home Screen: Includes a dynamic announcement slider, book categories, featured authors, and a “Continue Listening” section showing in-progress books.
Audiobook Playback: Stream audio using ExoPlayer with support for play, pause, seek, resume, and chapter-based navigation.
Multilingual Support: Access audiobooks in Arabic, English, and French.
Favorites Management: Add or remove books from a personal favorites list.
In-App Purchases: Securely purchase audiobooks using the Satim API.
Progress Tracking: Automatically save and resume playback from the last listened position.
Search & Filter: Perform real-time searches with filters for titles, authors, and categories.
Admin Features: Manage authors, books, announcements, and user orders through an admin dashboard.


Link to Project
Explore the final product on Play Store by clicking here.
 
Screenshots

Authentification

Home & Explore

Book & Author Page

Audiobook Player

Account & Favorites

Ready to bring your app idea to life?

Contact Me
ABDERRAHMANE
SALMI
Pisa, Italy