Currency Converter is a powerful Android application that utilizes the OpenExchange API to fetch the latest exchange rates and provides seamless conversion between currencies. This sample project showcases the integration of modern Android development practices and the utilization of cutting-edge technologies.
video_currency_convertor_open_exchange.mp4
- Latest Exchange Rates: Utilizes the OpenExchange API to fetch the most recent exchange rates.
- Offline Functionality: Stores exchange rate data locally, enabling the app to function both online and offline.
- Multi-Currency Conversion: Converts a given currency into all supported currencies, providing comprehensive results.
- Dynamic UI with Jetpack Compose: Leverages Jetpack Compose for building a modern and dynamic user interface.
- Asynchronous Programming with Coroutines and Flow: Utilizes coroutines and Flow for asynchronous operations, ensuring smooth and responsive user experience.
- State Management: Implements state management using Jetpack Compose's state management capabilities for efficient UI updates.
- Network Requests with Retrofit: Integrates Retrofit for making network requests to the OpenExchange API in a simple and concise manner.
- Dependency Injection with Dagger Hilt: Utilizes Dagger Hilt for dependency injection, promoting a modular and maintainable codebase.
- Persistent Data Storage with Room: Employs Room for local data storage, enabling efficient data persistence and retrieval.
- Navigation Component: Implements navigation using the Navigation component for seamless navigation between screens.
- Unit Testing: Includes unit tests to ensure the reliability and correctness of the app's functionality.
- Jetpack Compose
- Kotlin Coroutines
- Kotlin Flow
- Retrofit
- Dagger Hilt
- Room
- Navigation Component
- Unit Tests
- Clone this repository.
- Open the project in Android Studio.
- Build and run the application on an emulator or physical device.