ByteClub is a modern Android application built with Kotlin that combines multiple utilities including trivia, cryptocurrency information, and weather features. The app follows Clean Architecture principles and is built using the latest Android development practices.
- Trivia Quiz: Integration with QuizAPI.io for engaging trivia questions
- Cryptocurrency Tracking: Real-time crypto information using KuCoin API
- Weather Information: Current weather conditions and forecasts
- Clean Architecture: Organized codebase following SOLID principles
- Modern UI: Built with Jetpack Compose Material 3
- Language: Kotlin
- UI Framework: Jetpack Compose
- Architecture: Clean Architecture with MVVM pattern
- Dependency Injection: Hilt
- Networking: Retrofit with Kotlin Serialization
- Local Storage: Room Database
- State Management: Kotlin Flow & StateFlow
- Image Loading: Coil
- Charts: Vico Charts
- Firebase Services:
- Analytics
- Authentication
- Firestore
- Crashlytics
- Android Studio Arctic Fox or newer
- Minimum SDK: 26 (Android 8.0)
- Target SDK: 35
- JDK 8
- Clone the repository
- Open the project in Android Studio
- Sync project with Gradle files
- Add required API keys in local.properties:
QUIZ_API_KEY=your_quiz_api_key KUCOIN_API_KEY=your_kucoin_api_key WEATHER_API_KEY=your_weather_api_key - Build and run the project
The app has the following build variants:
- debug: Development build with debugging enabled
- release: Optimized build with ProGuard rules, shrinking, and minification enabled
The project follows Clean Architecture principles with the following layers:
- Presentation: Compose UI components and ViewModels
- Domain: Use cases and business logic
- Data: Repositories and data sources
- Framework: External service implementations
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
Current version: 2.1.1 (Build 211)
This project is licensed under the MIT License - see the LICENSE file for details
- QuizAPI.io for trivia data
- KuCoin for cryptocurrency data
- Weather data provider
- All other open-source libraries used in this project