The "Bus Routes" project is a demo application that showcases the use of MVVM architecture, Clean Architecture principles, network calls with Retrofit, Hilt for dependency injection, and periodic API calls to fetch bus route data. The application stores the network data in a Room database and displays it in the user interface.
- MVVM Architecture: The project is structured using the Model-View-ViewModel architectural pattern, promoting separation of concerns and maintainability.
- Clean Architecture: The project follows Clean Architecture principles to ensure modularity, scalability, and a clear separation of layers.
- Network Calls: The application makes network requests to a bus route API using Retrofit, allowing the retrieval of route information.
- Dependency Injection: Hilt is used for dependency injection, making it easy to provide and inject dependencies throughout the app.
- Periodic API Calls: The app is designed to call the bus route API every minute, ensuring the data is up-to-date.
- Local Data Storage: Data fetched from the API is stored in a Room database, enabling efficient offline access and data persistence.
Follow the steps below to set up the project locally and run it on your Android device or emulator:
-
Clone the repository:
git clone https://github.com/PanktiSP13/BusRouteDemo.git
-
Open the project in Android Studio.
-
Build and run the project on an Android device or emulator.
-
Explore the application's user interface and features.
The project relies on the following key dependencies:
- Retrofit: For making network requests.
- Hilt: For dependency injection.
- Room: For local data storage.