Wavies
A movie discovery app built for Dicoding's Android Developer Expert class. Features clean architecture, modularization, SQLCipher encryption, and SSL pinning.

About Wavies
Wavies is a comprehensive movie discovery application developed as the capstone project for Dicoding's Android Developer Expert certification. The app demonstrates advanced Android development practices including clean architecture with a fully modularized codebase, ensuring each layer (data, domain, presentation) is independently testable and maintainable.
Security is a first-class concern in Wavies. The app implements SQLCipher for encrypted local database storage, protecting user favorites and cached data. Network communications are secured through certificate pinning (SSL pinning), preventing man-in-the-middle attacks. These security measures reflect real-world production standards.
The architecture follows the MVVM pattern with reactive streams, leveraging Kotlin Coroutines and Flow for asynchronous operations. Dependency injection is handled cleanly, and the app features a smooth, intuitive UI that makes discovering and saving movies a delightful experience.
Key Features
- Clean Architecture with full modularization (app, core, favorite)
- SQLCipher encryption for secure local database
- SSL/Certificate pinning for network security
- MVVM pattern with Kotlin Coroutines & Flow
- Favorite movie management with encrypted storage
- Now Playing & popular movie browsing
- Search functionality with real-time results
- Dynamic feature module for favorites
Screenshots

Wavies Home Screen

Wavies Movie Detail

Wavies Favorites

Wavies Now Playing

Wavies Search


