Instagram Clone App Kotlin Android Studio in Hindi Part 1

Опубликовано: 02 Октябрь 2024
на канале: Noob Developer
18,822
171

Let's Build Instagram clone app in Android Studio using Kotlin with clean architecture(MVVM), Jetpack Compose for Layouts of the App Firebase Authentication and Firebase Firestore for authentication and storage purposes and Dagger Hilt for dependency injection.
In this particular video we first make app module for putting all the required dependencies which we use later in the app and we build this using Dagger Hilt.
In software engineering, dependency injection is a technique in which an object receives other objects that it depends on, called dependencies. The 'injection' refers to the passing of a dependency (a service) into the client that uses it. The service is made part of the client's state

After that we build repository for Authentication in which we cover the Firebase Sign In, Sign Up, Sign Out, Auth State.
And then Splash Screen and Navigation.

Instagram is an American photo and video sharing social networking service founded by Kevin Systrom and Mike Krieger. In April 2012, Facebook Inc. acquired the service for approximately US$1 billion in cash and stock.

dependencies{
classpath "com.android.tools.build:gradle:7.0.4"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.21"
classpath 'com.google.gms:google-services:4.3.10'
classpath "com.google.dagger:hilt-android-gradle-plugin:2.38.1"
}
plugins {
id 'com.android.application'
id 'kotlin-android'
id 'com.google.gms.google-services'
id 'kotlin-kapt'
id 'dagger.hilt.android.plugin'
}
Dependencies in gradle_build(app){
//Dagger - Hilt
implementation "com.google.dagger:hilt-android:2.38.1"
kapt "com.google.dagger:hilt-android-compiler:2.38.1"
implementation "androidx.hilt:hilt-lifecycle-viewmodel:1.0.0-alpha03"
kapt "androidx.hilt:hilt-compiler:1.0.0"
implementation 'androidx.fragment:fragment-ktx:1.4.0'


// Coroutines
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.1'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.2'

// Compose dependencies
implementation "androidx.lifecycle:lifecycle-viewmodel-compose:2.4.0"
implementation "androidx.navigation:navigation-compose:2.4.0-rc01"
//noinspection GradleDependency
implementation "androidx.compose.material:material-icons-extended:$compose_version"
implementation "androidx.hilt:hilt-navigation-compose:1.0.0-rc01"
implementation("io.coil-kt:coil-compose:1.4.0")
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-play-services:1.1.1'
}

00:00-00:15 Welcome to Noob Developer Channel
00:15-00:40 Technologies used in Developing this App
00:40-01:18 Connecting Project with Firebase
01:18-02:10 Making Packages for Architecture
02:10-08:55 Dagger Hilt Setup(Firebase Authentication, Firebase Firestore, Firebase Storage)
08:55-12:30 User Profile Model
12:30-27:15 Authentication Repository
27:15-31:20 Authentication Use Cases
31:20-34:12 Adding More Dependencies to Dagger Hilt Module
34:12-44:44 Splash Screen Setup with All Screens Route
44:44-54:24 Authentication View Model
54:24-55:14 Outro Like Share And Subscribe