Introduction
Kotlin
We are going to develop our Android application using the power of Kotlin programming language.
Jetpack Compose
For building our application UI, we are going to use a modern UI toolkit called Jetpack Compose.
Android Studio
We are going to build our Android application using the most popular IDE called Android Studio!
Learn how to Develop a modern Android App!
🚀🚀🚀
🎓 What you will learn in this course
- Develop Android App from Scratch
- To-Do App with Jetpack Compose
- New Declarative way of Building UI
- Introducing with Jetpack Compose
- Composable Lifecycle
- Initial Composition and Re-composition
- States in Jetpack Compose
- Side Effects
- Layouts in Jetpack Compose
- Build Custom UI Components
- ROOM Database
- Compose Navigation
- ViewModel
- Dependency Injection with Dagger-Hilt
- Preferences DataStore
- Support for Dark and Light Themes
- Animate UI Components
- Animated Splash Screen
- Swipe to Delete Animation
- SharedViewModel
- Clean Architecture
- MVVM
- Transition Animations
- and more...
🤚 Requirements for taking this course
- Basics of Kotlin Programming Language
- Basics of Android Studio IDE
- Motivation to learn
Course Content
Available in
days
days
after you enroll
Available in
days
days
after you enroll
- Note: Before you start
- Create the New Project (9:39)
- Add Dependencies (3:00)
- Create Model Classes (5:51)
- Introducing with ROOM Database (4:19)
- Setup ROOM Database (14:58)
- Introducing with Dependency Injection (4:10)
- Introducing with Dagger-Hilt Library (7:58)
- Setup Dagger-Hilt (7:00)
- Create ToDoRepository (5:33)
- Create SharedViewModel (5:10)
- Introducing with Navigation in Jetpack Compose (5:26)
- Setup Navigation Component (19:14)
- List Screen - FAB (13:02)
- List Screen - Default List App Bar (9:39)
- List Screen - List App Bar Actions (25:15)
- List Screen - Search App Bar (17:24)
- List Screen - Search App Bar - Part 2 (18:25)
- Display All Tasks - Design Task Item (14:13)
- Display All Tasks - Observe Database (12:34)
- Display All Tasks - Show Empty Content (9:48)
- Display All Tasks - Create RequestState (7:54)
- Task Screen - New Task App Bar (11:27)
- Task Screen - Existing Task App Bar (9:25)
- Task Screen - Get Selected Task (8:32)
- Task Screen - Priority Drop-Down (13:34)
- Task Screen - Task Content (11:06)
- Task Screen - Display Dynamic Content (10:22)
- CRUD Operations - Limit Title Length (4:03)
- CRUD Operations - Bug Fix & Fields Validation (8:21)
- CRUD Operations - Add Task (10:09)
- CRUD Operations - Display Snack Bar (6:40)
- CRUD Operations - Update Task (3:22)
- CRUD Operations - Delete Single Task (3:15)
- CRUD Operations - Undo Deleted Task (10:21)
- CRUD Operations - Search Database (15:22)
- CRUD Operations - Delete All Tasks (5:07)
- Alert Dialog - Delete Single Task (13:13)
- Alert Dialog - Delete All Tasks (5:15)
- Introducing with DataStore (3:06)
- List Sorting - Create DataStoreRepository (8:10)
- List Sorting - Apply Sorting in a List (11:50)
- Priority Sort Drop-Down & TaskComposable FIX (2:57)
- Swipe to Delete - Implementation (12:34)
- Swipe to Delete - Animate Item Visibility (9:56)
- Splash Screen - Design Splash Screen (7:44)
- Splash Screen - Implement Splash Screen (7:38)
- Splash Screen - Animate Splash Screen (4:26)
- Navigation - Transition Animations (14:01)
Available in
days
days
after you enroll
Available in
days
days
after you enroll
- Update #1 - Intercept Back Button (7:33)
- Update #2 - Code Cleanup - handleDatabaseActions() (4:48)
- Update #3 - Dependency Update and Code Cleanup (6:15)
- Update #4 - Configuration Change, SnackBar, SearchAppBar Bugs Fixed and more.. (7:46)
- Update #5 - Project Cleanup (13:53)
- Update #6 - Private Setters (15:57)
- Update #7 - Migrating to the new Splash API (7:29)
- Update #8 - Accompanist Navigation library migration + Soft keyboard updated (3:06)
- Update #9 - KAPT Migration and Undo Action fixed (6:52)
- Update #10 - Material 3 Migration Guide (41:52)
- Update #11 - SwipeToRefresh & SnackBar update (4:56)
- Update #12 - Type-safe Navigation (7:14)
Join my Discord Channel!
If you buy one of the courses from my website, you will also receive an invite only link to my private Discord Channel, which is available exclusively for my YouTube members! I'm planning to grow my Discord community, so don't be shy, join us! 🚀