Skip to content

ahsanu123/labor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

20 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

npm version npm npm licence


App For Iwaki

🍎 Project Log

  • 4 April 2025, create documentation about setup android development wihtout android studio in kotlin multiplatform
  • 19 Agustus 2025, create poc kotlin test, sideeffect, lifecycle, kotlin flow test, flow appstate.
  • 24 Desember 2025, learning state management and data fetching in kotlin (especially for android development with compose)
    • StateFlow is analogous to zustand in typescript world, we can create centralized state with this without need external lib
    • Flow is analogous to react-query in typescript world, we can do fetching like with this library
    • var state by remember {mutableStateOf("")}, learn how to read that, to work with by keyword we need Delegate either function delegate or class delegate, and remember is not a delegate, instead remember is function that require lambda argument that return a state MutableState, MutableState is real delegate that will be executed by by keyword, to meke MutableState we can use function mutableStateOf(args).
    • try to learn this to understand more about StateFlow and Flow https://github.com/android/compose-samples/tree/main/JetNews
    • TODO try to clone JetNews, build and run it on real physical device

πŸš€ Useful Note

β”œβ”€β”€ Architecture
β”‚   β”œβ”€β”€ Lifecycle (Manages activity/fragment lifecycle)
β”‚   β”œβ”€β”€ LiveData (Observable data holder)
β”‚   β”œβ”€β”€ ViewModel (Holds UI-related data)
β”‚   β”œβ”€β”€ Room (SQLite object mapping)
β”‚   └── WorkManager (Background work)
β”‚
β”œβ”€β”€ UI
β”‚   β”œβ”€β”€ Jetpack Compose (Declarative UI)
β”‚   β”‚   β”œβ”€β”€ UI Toolkit (Layout, Material components)
β”‚   β”‚   β”œβ”€β”€ Animation (Motion and transitions)
β”‚   β”‚   └── Tooling (Preview, Debugging)
β”‚   β”œβ”€β”€ AppCompat (Backward compatibility)
β”‚   └── Fragment (UI modularity)
β”‚
β”œβ”€β”€ Behavior
β”‚   β”œβ”€β”€ Notifications (Alerts and messaging)
β”‚   β”œβ”€β”€ Permissions (Runtime permissions)
β”‚   └── Sharing (Content sharing between apps)
β”‚
└── Foundation
    β”œβ”€β”€ Android KTX (Kotlin extensions for Android APIs)
    β”œβ”€β”€ App Startup (Initialize components quickly)
    └── Test (JUnit extensions, Espresso, etc.)

Command Note

  • gradle init, generate gradle project
  • gradle project, show subproject and project structure
  • gradle :labor-sever:dependencies, list specific project dependencies
  • : colon is analogous to / slash

KMP Readme

This is a Kotlin Multiplatform project targeting Android, iOS, Web, Desktop.

  • /composeApp is for code that will be shared across your Compose Multiplatform applications. It contains several subfolders:

    • commonMain is for code that’s common for all targets.
    • Other folders are for Kotlin code that will be compiled for only the platform indicated in the folder name. For example, if you want to use Apple’s CoreCrypto for the iOS part of your Kotlin app, iosMain would be the right folder for such calls.
  • /iosApp contains iOS applications. Even if you’re sharing your UI with Compose Multiplatform, you need this entry point for your iOS app. This is also where you should add SwiftUI code for your project.

Learn more about Kotlin Multiplatform, Compose Multiplatform, Kotlin/Wasm…

We would appreciate your feedback on Compose/Web and Kotlin/Wasm in the public Slack channel #compose-web. If you face any issues, please report them on YouTrack.

You can open the web application by running the :composeApp:wasmJsBrowserDevelopmentRun Gradle task.

🌼 Reference

About

🐟 App For Iwaki

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors