To-Do App With Jetpack Compose Mvvm - Android Development
Last updated 5/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 4.24 GB | Duration: 10h 21m
Last updated 5/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 4.24 GB | Duration: 10h 21m
Build a To-Do App using Modern Declarative UI Toolkit called Jetpack Compose to Accelerate your UI and App development.
What you'll learn
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 many more!
Requirements
Basics of Kotlin Programming Language
Android Studio
Motivation to Learn!
Description
Hello there and welcome to my course! In this course I'm going to teach you how to build your first Android App from scratch, using a popular UI toolkit called Jetpack Compose. I know that lots of you have been waiting for this moment, a moment when Jetpack Compose became stable! Now it's the right time to be an Android Developer! With a Jetpack Compose building Android Apps is going to be exciting, fun and a lot simpler then before. We are not going to need XML anymore.Instead we are going to build our UI with a regular Kotlin file, using the full power of Kotlin programming language. Also creating custom UI component has been easier. So you want to build a custom UI component, no problem, just start by adding a simple function annotated with @Composable annotation.And of course how would this course look like without a real project? Our To-Do application which we are going to develop in this course will have a Single Activity and Zero Fragments. Sounds impossible? Well it isn't. So better get used to it, because that will greatly simplify the process of developing Android apps.Now at the beginning of this course I'm going to introduce you with Jetpack Compose in general and with some of the most important concepts as well. You will learn everything about the Lifecycle of a single composable and how Compose Compiler is doing all the hard work for you behind the scenes.In this course we are going to use some of the most important Android Architecture components like: - ROOM Database: To save and read the data from a local database, plus we are going to write some custom SQL queries as well.- Compose Navigation: So we can navigate between our Screen Composables. And At the end of the course you will also learn how to add some beautiful transition animations as well.- ViewModel: Which will contain all the logic needed to work with our app.- Preference DataStore: To persist a simple key-value pairs.- And you'll learn about a popular dependency injection library called Dagger-Hilt. You will see how to inject a ViewModel with different dependencies without needing to create a ViewModel Factory.By default our application will support Dark Mode as well, and you will learn how easy it is to have two different themes of your app with a Jetpack Compose. You will also learn how to build your own custom UI components.We will use some of the most popular material components along with a Scaffold, which is an amazing composable function that uses SLOT API, to place all your UI components in the place they belong by the rules of material design documentation.To-Do app on which we are going to work on will have an animated Splash Screen, as some other components in our app. Also an Animated Swipe to Delete functionality which will allow us to easily remove an item from the list. Along with that we will add a safety feature called UNDO deleted item, which will display a SnackBar whenever we delete an item from the list, so we can get it back by one click. You will learn planty of other things related to the new way of developing Android Apps. And finally this course will be constantly updated with new videos whenever needed. Whenever we find a bug in our app, then I'm going to record a video about it and we are going to fix it together. Plus you'll be in contact with me throughout this whole course, and you can always ask me a question related to this course and even suggest some code cleanup for the project if you are skilled enough to find it.Overall this is going to be quite a journey.So what are you waiting my friend, let's start learning!
Overview
Section 1: Introducing with Jetpack Compose
Lecture 1 Introduction
Lecture 2 About Jetpack Compose
Lecture 3 About Recomposition
Lecture 4 States in Jetpack Compose
Lecture 5 Compose Lifecycle
Lecture 6 Side Effects
Lecture 7 Layouts
Section 2: Let's Build an App
Lecture 8 Note: Before you start
Lecture 9 Create the New Project
Lecture 10 Add Dependencies
Lecture 11 Create Model Classes
Lecture 12 Introducing with ROOM Database
Lecture 13 Setup ROOM Database
Lecture 14 Introducing with Dependency Injection
Lecture 15 Introducing with Dagger-Hilt Library
Lecture 16 Setup Dagger-Hilt
Lecture 17 Create ToDoRepository
Lecture 18 Create SharedViewModel
Lecture 19 Introducing with Navigation in Jetpack Compose
Lecture 20 Setup Navigation Component
Lecture 21 List Screen - FAB
Lecture 22 List Screen - Default List App Bar
Lecture 23 List Screen - List App Bar Actions
Lecture 24 List Screen - Search App Bar
Lecture 25 List Screen - Search App Bar - Part 2
Lecture 26 Display All Tasks - Design Task Item
Lecture 27 Display All Tasks - Observe Database
Lecture 28 Display All Tasks - Show Empty Content
Lecture 29 Display All Tasks - Create RequestState
Lecture 30 Task Screen - New Task App Bar
Lecture 31 Task Screen - Existing Task App Bar
Lecture 32 Task Screen - Get Selected Task
Lecture 33 Task Screen - Priority Drop-Down
Lecture 34 Task Screen - Task Content
Lecture 35 Task Screen - Display Dynamic Content
Lecture 36 CRUD Operations - Limit Title Length
Lecture 37 CRUD Operations - Bug Fix & Fields Validation
Lecture 38 CRUD Operations - Add Task
Lecture 39 CRUD Operations - Display Snack Bar
Lecture 40 CRUD Operations - Update Task
Lecture 41 CRUD Operations - Delete Single Task
Lecture 42 CRUD Operations - Undo Deleted Task
Lecture 43 CRUD Operations - Search Database
Lecture 44 CRUD Operations - Delete All Tasks
Lecture 45 Alert Dialog - Delete Single Task
Lecture 46 Alert Dialog - Delete All Tasks
Lecture 47 Introducing with DataStore
Lecture 48 List Sorting - Create DataStoreRepository
Lecture 49 List Sorting - Apply Sorting in a List
Lecture 50 Priority Sort Drop-Down & TaskComposable FIX
Lecture 51 Swipe to Delete - Implementation
Lecture 52 Swipe to Delete - Animate Item Visibility
Lecture 53 Splash Screen - Design Splash Screen
Lecture 54 Splash Screen - Implement Splash Screen
Lecture 55 Splash Screen - Animate Splash Screen
Lecture 56 Navigation - Transition Animations
Section 3: Final Word
Lecture 57 Final Word
Section 4: Course Updates
Lecture 58 Update #1 - Intercept Back Button
Lecture 59 Update #2 - Code Cleanup - handleDatabaseActions()
Lecture 60 Update #3 - Dependency Update and Code Cleanup
Lecture 61 Update #4 - Configuration Change, SnackBar, SearchAppBar Bugs Fixed and more..
Lecture 62 Update #5 - Project Cleanup
Lecture 63 Update #6 - Private Setters
Lecture 64 Update #7 - Migrating to the new Splash API
Lecture 65 Update #8 - Accompanist Navigation library migration + Soft keyboard updated
Lecture 66 Update #9 - KAPT Migration and Undo Action fixed
Lecture 67 Update #10 - Material 3 Migration Guide
Lecture 68 Update #11 - SwipeToRefresh & SnackBar update
Android Developers,Android Designers,Anyone who wants to learn new way of Developing Android Apps,Anyone who wants to learn more about Jetpack Compose by working on a real project,Anyone who wants to keep up with the Latest API's for Building Android Apps,Anyone who wants to build Android Apps with ease,Anyone who wants to improve skills and stay up to date