Pinned Repositories
Affirmation
(Practice purposes) An Android app that displays a list of pre-defined affirmation using LazyColumn and Card components
Amphibians
(Practice purposes) An app that fetches data through a remote API to display cards about different types of amphibians using Retrofit. It uses several techniques like Dependency Injection, ViewModel, App container to keep the components loosely coupled
Android-Business-Card
Simple business card app with basic info
Android-Dice-Roller
A simple 6-face dice roller
Android-Greeting-Card
Android-Lemonade
A simple app where you tap to produce and drink lemonade
Art-Space
A simple Android app that displays several pictures on an elevated surface. Pictures can be navigated using buttons
Best-Anime-Girls-Based
(Practice purposes) The app contains a list of cards, each card contains the expandable information of an Anime girl that I personally regard as one of the best waifus. The app is compatible with dark theme. All info and images are derived from myanimelist.com
Bookshelf
(Practice purposes) An Android app that search for books using Google Book API, and display the search result using a vertical grid. It uses Retrofit to handle HTTP request, Kotlin serialization to handle JSON data, and Coil to display images. Separation of concerns is also taken into account
FlightSearch
(Practice purposes) An app that searches for flights given a departure airport. It is able to save user-favorite routes using Room database. The pre-populated database of airports is also built using Room. When user opens the app, the last input (if any) from the last time the user uses the app will be pre-filled.
Andy-Cuong's Repositories
Andy-Cuong/Affirmation
(Practice purposes) An Android app that displays a list of pre-defined affirmation using LazyColumn and Card components
Andy-Cuong/Amphibians
(Practice purposes) An app that fetches data through a remote API to display cards about different types of amphibians using Retrofit. It uses several techniques like Dependency Injection, ViewModel, App container to keep the components loosely coupled
Andy-Cuong/Android-Business-Card
Simple business card app with basic info
Andy-Cuong/Android-Dice-Roller
A simple 6-face dice roller
Andy-Cuong/Android-Greeting-Card
Andy-Cuong/Android-Lemonade
A simple app where you tap to produce and drink lemonade
Andy-Cuong/Art-Space
A simple Android app that displays several pictures on an elevated surface. Pictures can be navigated using buttons
Andy-Cuong/Best-Anime-Girls-Based
(Practice purposes) The app contains a list of cards, each card contains the expandable information of an Anime girl that I personally regard as one of the best waifus. The app is compatible with dark theme. All info and images are derived from myanimelist.com
Andy-Cuong/Bookshelf
(Practice purposes) An Android app that search for books using Google Book API, and display the search result using a vertical grid. It uses Retrofit to handle HTTP request, Kotlin serialization to handle JSON data, and Coil to display images. Separation of concerns is also taken into account
Andy-Cuong/Coursera-Data_Structures_and_Algorithms
My solutions to assignments of Data structures and algorithms (by UCSD and HSE) on Coursera. All problems from Course 1 to Course 5 have been solved.
Andy-Cuong/FlightSearch
(Practice purposes) An app that searches for flights given a departure airport. It is able to save user-favorite routes using Room database. The pre-populated database of airports is also built using Room. When user opens the app, the last input (if any) from the last time the user uses the app will be pre-filled.
Andy-Cuong/Tip-Time
A simple Android tip calculator, with local (unit) test and instrumentation (UI) test
Andy-Cuong/basic-android-kotlin-compose-training-dessert-clicker
Andy-Cuong/Blur-O-Matic
(Practice purposes) An Android app that blurs a given image and save that blurred image to a file. User can choose the level of blurring through the UI buttons. The main purpose is to demonstrate the use of WorkManager to schedule work to be done in the background
Andy-Cuong/Bus-Schedule
(Practice purposes) An Android app that displays bus schedule from a pre-loaded schedule data file using Room database
Andy-Cuong/Course-Grid
(Practice purposes) An Android app that displays a collection of courses using a LazyVerticalGrid component
Andy-Cuong/Cupcake
(Practice purposes) An Android app that lets user customize their cupcake order and share the order to other apps. The main purpose is to showcase the usage of Intent testing abilities
Andy-Cuong/Dessert-Clicker
(Practice purposes) An Android app that displays different desserts based on the number of tap. The main purpose is to work with Intent and familiarize with Activity Lifecycle
Andy-Cuong/Dessert-Release
(Practice purposes) An Android app that displays a collection of desserts inside a grid or a column, based on user preference. The preference is saved even after the user closes the app using DataStore
Andy-Cuong/Inventory
(Practice purposes) An Android app that demonstrates how to add, update, sell, and delete user-inputted items from local database using Room, which interacts with the UI layer through ViewModel, Flow and Navigation
Andy-Cuong/Lunch-Tray
(Practice purposes) An Android app that lets user order their lunch tray content throughout different screens. It adapts Compose Navigation components to navigate to different sections of the order
Andy-Cuong/Mars-Photos
(Practice purposes) An Android app that retrieves actual photos of Mars' surface from a REST web server using Retrofit, and displays them using Kotlin (de)serialization and Coil library. It also demonstrates ViewModel and Repository testing abilities
Andy-Cuong/Race-Tracker
(Practice purposes) An Android app that simulates the progress of two players in a race. The idea is to demonstrate basic concepts of Kotlin coroutines as well as testing them. A user can start, pause, or reset the race with buttons in the UI.
Andy-Cuong/Reply
(Practice purposes) An Android mock email client that displays various inbox categories. The main purpose is to familiarize with the way to work with adaptive layouts
Andy-Cuong/Sports
(Practice purposes) An Android app that displays a compact or extended list of sports based on the device's screen size. The main purpose is to practice implementing adaptive layouts
Andy-Cuong/Superheroes
(Practice purposes) An Android app that displays a list of superheroes. The app utilizes different fonts, themes and typography to deliver a custom UI experience
Andy-Cuong/Unscramble
(Practice purposes) Unscramble is a game where player guessed a word given all of its letter in a scrambled order. The main purpose is to demonstrate the use of ViewModel and StateFlow
Andy-Cuong/Water-Me
(Practice purposes) An Android app that reminds user when to water their plants. Notification work is scheduled using WorkManager
Andy-Cuong/Weather-app
Andy-Cuong/Woof
(Practice purposes) An Android app that displays a list of adorable dogs. Each dog can be expanded with spring animation and its background color is changed upon extended