diff --git a/README.md b/README.md index 3abafb7..6ed4d29 100644 --- a/README.md +++ b/README.md @@ -1,22 +1,46 @@ # Ships With Compose Mvvm UI States and Repository -This project is an application that applied some of the latest Google technologies for Android such as Jetpack Compose, Hilt Dependencies Injection + +This project is an application that applied some of the latest Google technologies for Android such +as Jetpack Compose, Hilt Dependencies Injection and Room Database. # This Project contains: -The programming language is the [Kotlin](https://kotlinlang.org/docs/getting-started.html), it is a modern, JVM-based programming language that is concise, safe, and interoperable with Java.
-[Kotlin Coroutines](https://kotlinlang.org/docs/coroutines-overview.html) is used for asynchronous tasks.
-[Kotlin KTX](https://developer.android.com/kotlin/ktx) is a collection of Kotlin extensions that offer more concise and expressive code for working with Android APIs and libraries. + +The programming language is the [Kotlin](https://kotlinlang.org/docs/getting-started.html), it is a +modern, JVM-based programming language that is concise, safe, and interoperable with Java.
+[Kotlin Coroutines](https://kotlinlang.org/docs/coroutines-overview.html) is used for asynchronous +tasks.
+[Kotlin KTX](https://developer.android.com/kotlin/ktx) is a collection of Kotlin extensions that +offer more concise and expressive code for working with Android APIs and libraries. The UI is build using [Jetpack Compose](https://developer.android.com/develop/ui/compose).
-[Retrofit](https://square.github.io/retrofit/) is responsible for making requests and retrieving data from the remote server. ([Repository](https://github.com/square/retrofit))
-[Room Database](https://developer.android.com/training/data-storage/room) is responsible for saving the retrieved data from the remote server, querying data from the local database, and supporting offline functionality.
-[Hilt Dependencies Injection](https://developer.android.com/training/dependency-injection/hilt-android) is an Android library that simplifies dependency injection by using annotations to automatically manage and provide dependencies across components, built on top of Dagger. ([Documentation](https://dagger.dev/hilt/))
-[MVVM](https://developer.android.com/topic/architecture#recommended-app-arch) with repository is an architecture where the Repository manages data sources (e.g., network, database), the ViewModel processes the data for the UI, and the View displays the UI, ensuring a clear separation of concerns.
-[UI State](https://developer.android.com/topic/architecture/ui-layer/events#handle-viewmodel-events) to initial, loading, loaded and error.
-[KSP](https://kotlinlang.org/docs/ksp-overview.html) (Kotlin Symbol Processing) is a tool for processing Kotlin code at compile time, enabling developers to create powerful code generation and annotation processing solutions. (ksp only setup for Room Database) ([Repository](https://github.com/google/ksp))
-[R8](https://developer.android.com/build/shrink-code) enabled, is a code shrinker and obfuscator for Android that optimizes and reduces the size of APKs by removing unused code and resources, while also obfuscating the remaining code to improve security.
-[Gradle Kotlin DSL](https://docs.gradle.org/current/userguide/kotlin_dsl.html) is a domain-specific language for configuring Gradle build scripts using Kotlin syntax, offering better IDE support and type safety compared to Groovy.
+[Retrofit](https://square.github.io/retrofit/) is responsible for making requests and retrieving +data from the remote server. ([Repository](https://github.com/square/retrofit))
+[Room Database](https://developer.android.com/training/data-storage/room) is responsible for saving +the retrieved data from the remote server, querying data from the local database, and supporting +offline functionality.
+[Hilt Dependencies Injection](https://developer.android.com/training/dependency-injection/hilt-android) +is an Android library that simplifies dependency injection by using annotations to automatically +manage and provide dependencies across components, built on top of +Dagger. ([Documentation](https://dagger.dev/hilt/))
+[MVVM](https://developer.android.com/topic/architecture#recommended-app-arch) with repository is an +architecture where the Repository manages data sources (e.g., network, database), the ViewModel +processes the data for the UI, and the View displays the UI, ensuring a clear separation of +concerns.
+[UI State](https://developer.android.com/topic/architecture/ui-layer/events#handle-viewmodel-events) +to initial, loading, loaded and error.
+[KSP](https://kotlinlang.org/docs/ksp-overview.html) (Kotlin Symbol Processing) is a tool for +processing Kotlin code at compile time, enabling developers to create powerful code generation and +annotation processing solutions. (ksp only setup for Room +Database) ([Repository](https://github.com/google/ksp))
+[R8](https://developer.android.com/build/shrink-code) enabled, is a code shrinker and obfuscator for +Android that optimizes and reduces the size of APKs by removing unused code and resources, while +also obfuscating the remaining code to improve security.
+[Gradle Kotlin DSL](https://docs.gradle.org/current/userguide/kotlin_dsl.html) is a domain-specific +language for configuring Gradle build scripts using Kotlin syntax, offering better IDE support and +type safety compared to Groovy.
## Tutorials (Combination) + https://www.youtube.com/watch?v=eAbKK7JNxCE&ab_channel=PhilippLackner
https://github.com/philipplackner/WeatherApp
https://developer.android.com/topic/architecture/ui-layer/state-production
@@ -24,7 +48,9 @@ https://github.com/android/architecture-samples
https://github.com/android/sunflower
# Feeds/Urls/End Point (parsing some data from the response) + ## (Links References for Ends Points) + https://github.com/r-spacex/SpaceX-API (GitHub)
https://docs.spacexdata.com/?version=latest (Postman)