LearnWithFun is a Learning Management System Mobile Application built using Native-Android(Kotlin & XML) and the backend is built using ExpressJS and MongoDB.
Backend Repo - learn-with-fun-backend
- Login using Phone
- Course Enrollment
- Search for Course and Tutor
- Quick Look on the Course Contents
- Buying the Particular Course (Payment using Paypal/Card)
- VideoPlayback of the Course Video
- Quiz
- Cheat Monitoring(with Photo click of particular moment)
- Track of Course Coverage and Quiz
CleanArchitecture Pattern is used to build this App
- Dagger-Hilt - For Dependency Injection
- Braintree - For Payment Integration
- Retrofit2 - For API Calls
- RoomDB - For offline data caching
- FirebaseMLKit - For Cheat Detection
- Firebase Storage - Data Storage
- CameraX - For Cheat Detection and showing video of User while appearing for quiz
- Glide - For Image Processing
- Exoplayer - For playing remote videos smoothly
- Kotlin Serialization - For JSON-Parsing and Object Parsing
- Other Libraries are Kotlin Coroutines, Navigation Component, ViewModels, CameraX, LottieAnimations, etc.