Laugh Lounge is a Compose Multiplatform application designed to entertain users with a variety of jokes. The jokes are from several different categories ranging from Chuck Norris to Dad jokes. If you want to enjoy a laugh go checkout the repo out on Github. Soon™ to be on the Play/App store.

Android Playground Android Application

Android Playground is a Android application that leverages modern technologies and best practices to provide users with an immersive and engaging experience. The app is designed using the Model-View-ViewModel (MVVM) architecture pattern to separate the user interface (View) from the business logic (ViewModel) and the data source (Model).

API Integration - Retrofit

To interact with the PokeAPI, the app uses Retrofit, a type-safe HTTP client that simplifies the process of sending network requests and handling responses. This allows the app to retrieve data from the PokeAPI in a quick and efficient manner, ensuring that users have access to the latest information on Pokémon. The app also features pagination to display Pokémon in batches.

Asynchronous Calls - Flow

The app uses Flow, a reactive stream library, to manage asynchronous calls. This allows the app to perform network requests and update the UI in real-time, ensuring that users have access to the most up-to-date information on Pokémon.

Dependency Injection - Hilt

Android Playground uses Hilt for dependency injection, which simplifies the process of managing dependencies in the app. This ensures that the app remains modular and maintainable, making it easier to extend the functionality of the app in the future.

Firebase Login and Navigation

The app uses Firebase Login for user authentication, allowing users to securely login to the app with their credentials. The app features one NavHost for the login screen and another NavHost for a bottom navigation bar that features several options, including a list of Pokémon, a Map (in progress), and a Profile (in progress) feature. This approach ensures that the app remains flexible and scalable, allowing users to easily navigate through the various features of the app.

Cypherpunk Android Application

Cypherpunk is an Android application that provides real-time information on the top 100 crypto coins and tokens. It uses modern technologies and best practices to ensure that the app is efficient, scalable, and easy to maintain.

Architecture Pattern - MVVM

The app uses the Model-View-ViewModel (MVVM) architecture pattern to separate the user interface (View) from the business logic (ViewModel) and the data source (Model). This ensures that the codebase is modular and maintainable.

API Integration - Retrofit

To interact with the API provided by Coinpaprika, the app uses Retrofit, a type-safe HTTP client that simplifies the process of sending network requests and handling responses.

Asynchronous Calls - Flow

The app uses Flow, a reactive stream library, to manage asynchronous calls. This allows the app to perform network requests and update the UI in real-time, ensuring that users have access to the most up-to-date information on the top 100 crypto coins and tokens.

Use Cases

The app uses Use Cases, a design pattern that encapsulates the business logic of an application into modular, reusable components. These Use Cases act as intermediaries between the View and the ViewModel, ensuring that the business logic remains decoupled from the presentation layer. This approach simplifies the testing process, improves code maintainability, and ensures that the app remains flexible and scalable.