A fun Android app that helps you track how many times you think about the Roman Empire each day! Built with modern Android development practices, this app demonstrates Clean Architecture principles and provides a delightful user experience.
Have you ever wondered how often you think about the Roman Empire? This app lets you track those moments! Each time you think about the Roman Empire, simply open the app and increase the counter. The app keeps a complete history of your daily counts and provides weekly summaries to help you understand your Roman Empire thinking patterns.
- Daily Counter: Easily increment the counter each time you think about the Roman Empire
- Weekly Summary: View your weekly statistics and patterns
- Complete History: Browse through all your recorded days with detailed information
- Beautiful UI: Modern Material Design 3 interface with Roman Empire-themed aesthetics
- Home Widget: Quick access widget to view your count without opening the app
- Latin Quotes: Inspirational quotes in Latin and English/Spanish to enhance the experience
- Data Privacy: All data is stored locally on your device - no data collection or sharing
Get the app from Google Play Store:
This project follows Clean Architecture principles, ensuring separation of concerns and maintainability:
- Presentation Layer: Jetpack Compose UI with MVVM pattern
- Domain Layer: Business logic and use cases
- Data Layer: Room database for local persistence
- Language: Kotlin
- UI Framework: Jetpack Compose
- Architecture: Clean Architecture (Presentation, Domain, Data layers)
- Dependency Injection: Hilt
- Database: Room
- Navigation: Navigation Compose
- Widgets: Glance AppWidget
- Material Design: Material 3
- Jetpack Compose
- Room Database
- Hilt (Dependency Injection)
- Navigation Compose
- Glance (App Widgets)
- Material Icons Extended
app/src/main/java/com/blas/romanempirecounter/
├── data/
│ ├── local/
│ │ ├── dao/ # Room DAOs
│ │ ├── database/ # Room database setup
│ │ └── entity/ # Room entities
│ └── repository/ # Repository implementations
├── domain/
│ ├── model/ # Domain models
│ ├── repository/ # Repository interfaces
│ └── usecase/ # Use cases
├── presentation/
│ ├── mainpage/ # Main screen with counter
│ ├── secondScreen/ # History and statistics screen
│ ├── composables/ # Reusable composables
│ └── ui/theme/ # App theming
└── di/ # Dependency injection modules
- Android Studio Hedgehog or later
- JDK 17 or higher
- Android SDK (minSdk 26, targetSdk 34)
- Clone the repository:
git clone https://github.com/slab10000/Android_App_Clean_Architecture-RomanEmpireCounter.git-
Open the project in Android Studio
-
Sync Gradle files
-
Run the app on an emulator or physical device
I documented the entire development process on TikTok and YouTube:
- TikTok: @blas.ml
- YouTube: @BlasMorenoLaguna
Check out my content to see the app development journey, architecture decisions, and implementation details!
Main Screen - Counter |
Main Screen - Latin Quote |
History Screen |
Main Screen: Features a large laurel wreath counter displaying Roman numerals. Users can press to increase the counter or hold to reset. The screen also displays inspirational Latin phrases with their definitions.
History Screen: Shows all your recorded days with a filter option (7 Days, Month, Year, or All). Each entry displays the date and the counter value in Roman numerals, with today's entry highlighted in green.
- Package Name:
com.blas.romanempirecounter - Min SDK: 26 (Android 8.0)
- Target SDK: 34 (Android 14)
- Version: 1.8
- Content Rating: Everyone
This app:
- ✅ Stores all data locally on your device
- ✅ Does not collect any personal information
- ✅ Does not share data with third parties
- ✅ Does not require internet connection for core functionality
Contributions, issues, and feature requests are welcome! Feel free to check the issues page.
Blas Moreno Laguna
- Email: [email protected]
- TikTok: @blas.ml
- YouTube: @BlasMorenoLaguna
⭐ If you find this project interesting, please consider giving it a star!



