Skip to content

Repository files navigation

pythonx - pycomposeui

pythonx is a python extension for kotlin integration

Description

Python Wrapper for Kotlin Compose Multiplatform.

Maintainer

NameDetailed PartPeriod
@b-re-wComposable Runtime2023 ~ now
@rnoro5122Material32024 ~ now

Template ToDo list

  • Composable Runtime
  • Material3 Wrapper

Integration


Usage

frompycomposeui.runtimeimportComposable, EmptyComposable, remember_saveablefrompycomposeui.material3importText, Column, Row, Buttonfrompycomposeui.uiimportmodifier, Alignment@ComposabledefUiTestCase(text: str="UiTestCase"):
""" Simple way to create a Composable """Text(text)
@ComposableclassUiTest:
""" Class-based Composable """defcompose(self, content: Composable=EmptyComposable):
Column(modifier, content=lambda: {
UiTestCase(text="UiTestCase in UiTest"),
content()
})
@ComposableclassBasicText:
""" Class-based Composable 2 """@classmethoddefcompose(cls, text: str="BasicText"):
Text(text)
@ComposableclassRichText(Composable):
""" Inheritance-based Composable """@staticmethoddefcompose(content: Composable=EmptyComposable):
Column(modifier, content=Composable(lambda: {
Text("Basic Text inside of Rich Text"),
Row(lambda: { # Unlike Kotlin Compose, pycompose does not require Composable functions as content parametersText("Row Left Side "),
Text("Row Right Side")
}),
content()
}))

About

Python Wrapper for Jetpack Compose Multiplatform Mobile

Resources

Stars

7 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages