
Learn the three core parts: user interface, logic, and data; build layouts with Jetpack Compose; explore mvvm, coroutines, and theming to create a simple Android app.
Install Android Studio, the official Android development IDE by Google, via direct download or JetBrains Toolbox, and note hardware tips like 16 GB RAM and a strong CPU.
Create your first Android project using the empty activity template with Jetpack Compose. Configure the package name, save location, and minimum SDK, and compare Kotlin, Java, XML, and Groovy.
Explore the Android Studio interface, from the code editor and layout preview to the toolbar, tool windows, and emulator setup, including run, debug, and logcat workflows.
Connect a device or emulator to run your app, using device manager and emulators with Google Play. Enable developer mode and USB debugging for testing on devices and screen sizes.
Master Gradle, Android build automation tool, to manage dependencies, compile code, package assets, and deploy builds, while syncing with Gradle and exploring version code, version name, and Gradle version catalogs.
Learn the core Android app components: activities as the app container with its life cycle, UI elements, resources, and the Android manifest, plus how they shape app structure and behavior.
Explore building an Android product screen with Jetpack Compose, a declarative, Kotlin-based UI framework. It enables reactive recomposition using composables, modifiers, and layouts like Column and Box.
Apply a reusable material theme to the product screen, manage color palettes and typography, and use coil for images while scaffolding enables edge-to-edge layout and a top app bar.
Fetch data from the server by modeling a Kotlin data class for product and building a Ktor-based API client over HTTPS to parse JSON from the fake store API.
mvvm separates the model, view, and viewmodel to organize data, user interface, and logic, enabling clean data flows from model to view and reducing spaghetti code.
Build a view model to provide data to the UI by fetching from the API and keeping the UI responsive with Kotlin coroutines and flow.
Connect the view model to the product screen, observe the product flow with compose, and manage loading, success, and error states while enabling pull-to-refresh and data formatting via strings.xml.
In this mini course, you’ll take the first steps into the world of Android app development.
Since the course is created in 2025, you’ll build a real app using a modern Android tech stack that’s used in the industry today:
Kotlin – a modern, expressive, and concise programming language
Jetpack Compose – Android’s modern UI toolkit
Kotlin Coroutines – a powerful tool for handling asynchronous operations
Ktor – a lightweight HTTP client library
MVVM architecture – an architectural pattern that helps organize your code
What You’ll Build
In this course, you’ll build a simple, one-screen app that mimics the core behavior of an e-commerce app.
It fetches real product data from a server and displays it in a clean, scrollable list — just like what you see in shopping apps. While the app is simple, it introduces powerful concepts like network requests, UI rendering, and clean architecture.
About your instructor
Hey! I’m Shayan.
Born in Iran, based in The Netherlands.
I’ve been a software engineer since 2013, focusing mostly on Android development. Over the years, I’ve built apps of my own, contributed to apps loved by millions, and worked with all sorts of companies from tiny startups to big tech companies like eBay. Now, I’m sharing what I’ve learned with other developers to help them craft great Android apps!