# Textbook

- [1. Introduction to the Editor and Views](/chapters/1.-introduction-to-the-editor.md)
- [1.1 Introduction to the Editor](/chapters/1.-introduction-to-the-editor/1.1-intro-to-editor.md)
- [1.2 SDK Management](/chapters/1.-introduction-to-the-editor/1.2-sdk-management.md)
- [1.3 Kotlin Overview](/chapters/1.-introduction-to-the-editor/1.3-java-review.md)
- [1.4 Views](/chapters/1.-introduction-to-the-editor/1.4-views.md)
- [1.5 Android Studio Project Demo + Understanding The Editor](/chapters/1.-introduction-to-the-editor/1.5-demo-wip.md)
- [2. Jetpack Compose](/chapters/2.-jetpack-compose.md)
- [2.1 Introduction](/chapters/2.-jetpack-compose/2.1-introduction.md): Providing an overview of Jetpack Compose
- [2.2 Layouts](/chapters/2.-jetpack-compose/2.2-layouts.md): Organization slay
- [2.3 Modifiers](/chapters/2.-jetpack-compose/2.3-modifiers.md)
- [2.4 Animations](/chapters/2.-jetpack-compose/2.4-animations.md)
- [2.5 Lazy Lists](/chapters/2.-jetpack-compose/2.5-lazy-lists.md)
- [2.6 Reactive UI](/chapters/2.-jetpack-compose/2.6-reactive-ui.md)
- [3. Intents and Manifest](/chapters/3.-intent-and-manifest.md)
- [3.1 Activities](/chapters/3.-intent-and-manifest/3.1-activities.md)
- [3.2 Implicit Intents](/chapters/3.-intent-and-manifest/3.3-explicit-intents.md)
- [3.3 Explicit Intents](/chapters/3.-intent-and-manifest/3.2-implicit-intents.md)
- [3.4 Manifest](/chapters/3.-intent-and-manifest/3.1-manifest.md)
- [3.5 Permissions](/chapters/3.-intent-and-manifest/3.5-permissions.md)
- [3.6 Summary](/chapters/3.-intent-and-manifest/3.6-summary.md)
- [4. Navigation](/chapters/8.-navigation.md)
- [4.1 Types of Navigation](/chapters/8.-navigation/8.1-types-of-navigation.md)
- [4.2 Implementation of the Bottom Navigation Bar](/chapters/8.-navigation/bottom-navigation.md)
- [5. Data and Persistent Storage](/chapters/7.-persistent-storage.md): we storing !1!
- [5.1 Singleton Classes](/chapters/7.-persistent-storage/6.1-singletons.md)
- [5.2 Shared Preferences](/chapters/7.-persistent-storage/shared-preferences.md)
- [5.3 Rooms](/chapters/7.-persistent-storage/rooms.md)
- [5.4 Entities](/chapters/7.-persistent-storage/entities.md)
- [5.5 Data Access Objects](/chapters/7.-persistent-storage/data-access-objects.md)
- [5.6 Databases](/chapters/7.-persistent-storage/databases.md)
- [5.5 Concurrency](/chapters/5.5-concurrency.md): Doing multiple things at the same time! We love multi-tasking 🤩
- [5.5.1 Coroutines](/chapters/5.5-concurrency/7.2-coroutines.md): A coroutine is a concurrency design pattern that you can use on Android to simplify code that executes asynchronously.
- [5.5.2 Implementation of Coroutines](/chapters/5.5-concurrency/8.3-implementation-of-coroutines.md)
- [5.5.3 Coroutines with Networking Calls](/chapters/5.5-concurrency/8.4-coroutines-with-networking-calls.md)
- [6. Networking and 3rd Party libraries](/chapters/6.-networking.md)
- [6.1 HTTP Overview](/chapters/6.-networking/6.2-http-overview.md)
- [6.2 3rd Party Libraries](/chapters/6.-networking/8.5-3rd-party-apis.md)
- [6.3 JSON and Moshi](/chapters/6.-networking/6.3-json-and-moshi.md)
- [6.4 Retrofit](/chapters/6.-networking/6.4-retrofit.md)
- [6.5 Summary](/chapters/6.-networking/6.4-summary.md)
- [7. MVVM Design Pattern](/chapters/7.-mvvm-design-pattern.md)
- [7.1 Key Idea](/chapters/7.-mvvm-design-pattern/7.1-key-idea.md): MVVM stands for model-view-viewmodel, let's go over each of these and see how they provide a framework for state management.
- [7.2 Implementation Ideas](/chapters/7.-mvvm-design-pattern/7.2-implementation-ideas.md)
- [8. Flows](/chapters/8.-flows.md)
- [9. The Art and Ontology of Software](/chapters/android-from-a-software-theory-perspective.md): Adam's Fall 2020 Guest Lecture
- [10. 🔥 Firebase](/chapters/11.-firebase.md): Chris' Spring 2021 Guest Lecture
- [10.1 Setting up Firebase](/chapters/11.-firebase/11.1-setting-up-firebase.md): Setting up Firebase is very easy and pain free (kinda), just follow these steps! ✨✨
- [10.2 Authentication](/chapters/11.-firebase/11.2-authentication.md)
- [10.3 Analytics](/chapters/11.-firebase/11.3-analytics.md)
- [10.4 Messaging](/chapters/11.-firebase/11.4-messaging.md)
- [10.5 Firestore](/chapters/11.-firebase/10.5-firestore.md): No backend? No problem.
