Ryan Scott
04/20/2025, 7:54 PMRyan Scott
04/20/2025, 7:55 PMRyan Scott
04/20/2025, 8:00 PMDavid Herman
04/20/2025, 8:12 PMDavid Herman
04/20/2025, 8:12 PMRyan Scott
04/22/2025, 4:36 PM@Api
annotation.phteven
04/24/2025, 7:40 PMphteven
04/28/2025, 1:51 PM@Composable
. Ideally, I would like something similar to an Application
class that I fully control. Comparing this to React, where you explicitly call the initial render function:
ReactDOM.createRoot(document.getElementById("root")).render(...);
I am also looking into the Kilua project and I prefer its approach: https://github.com/rjaros/kilua/blob/main/examples/todomvc/src/commonMain/kotlin/TodoApp.kt
In Kilua, you own the entry point, and you can set up dependencies like ApiClient
and Storage
classes outside of any @Composable
.
Routes are described as part of your app’s component tree, and nested routes are supported (e.g., for a navigation bar, main/details view).
One important use case for this is passing the router into a DI container and using it inside side effects (such as Redux-Observables) to programmatically change the user’s route (for example, redirecting to the login screen on any “forbidden” response).
Right now, this kind of navigation is only possible inside a page’s content.David Herman
05/17/2025, 1:43 AMDavid Herman
05/17/2025, 1:49 AMSeveriano Jaramillo
05/19/2025, 1:12 AMkobweb create app
), did some minor updates and added configuration to build and deploy to GitHub Pages. This is not all I want to do, but first I would like to fix some simple issues.
State such as color mode and menu state (when the available width is small) does not seem to work when the app is deployed, but it works when running it locally. Is this some kind of known issue?Meet
05/27/2025, 4:52 AMShubham Singh
05/31/2025, 9:37 PMDavid Herman
06/10/2025, 12:27 AMDavid Herman
06/20/2025, 5:20 PMDavid Herman
06/25/2025, 6:06 PMkobweb = "0.23.0-SNAPSHOT"
kotlin = "2.2.0"
Christopher Mederos
06/26/2025, 3:36 AMchax
06/29/2025, 5:05 PMDavid Herman
07/04/2025, 11:22 PMSeri
07/24/2025, 5:22 PMChristopher Mederos
07/25/2025, 6:50 AMCheick Kante
07/28/2025, 9:38 AMval markdownContent = ctx.markdown!!.frontMatter["content"]
or even better, if, I can have this:
@Layout
@Composable
fun MarkdownLayout(content: (String) -> Unit)
beside this:
@Layout
@Composable
fun MarkdownLayout(content: @Composable () -> Unit)
Christopher Mederos
07/29/2025, 5:37 AM@InitSilk
fun initTheme(ctx: InitSilkContext) {
ctx.theme.palettes.light.background = Colors.Blue
}
Christopher Mederos
08/01/2025, 5:26 AM<script>
(function(......
</script>
Rafael Tonholo
08/02/2025, 9:32 PM{{{ start .some.package.CustomComponent }}}
## My subtitle
**bunch** of text with *different* ~styles~
{{{ end .some.package.CustomComponent }}}
Rest of the markdown file
Composable:
@Composable
fun CustomComponent(content: @Composable () -> Unit) {
Div(attrs = CustomComponentStyle.toAttrs()) {
// other custom stuff
content()
}
}
And in the generated file, it would call the custom component something like this:
@Page("/awesome-markdown")
@Layout(".MarkdownLayout")
@Composable
fun Awesome_markdown() {
project.some.package.CustomComponent {
org.jetbrains.compose.web.dom.P {
org.jetbrains.compose.web.dom.B {
org.jetbrains.compose.web.dom.Text("bunch")
}
org.jetbrains.compose.web.dom.Text(" of text with ")
org.jetbrains.compose.web.dom.Em {
org.jetbrains.compose.web.dom.Text("different")
}
org.jetbrains.compose.web.dom.Text(" ~styles~")
}
}
// Rest of the markdown file parsed
}
Would that be possible?bj0
08/09/2025, 4:32 PMbj0
08/09/2025, 5:00 PMRyan Scott
08/18/2025, 5:47 PM> Task :site:kspKotlinJs FAILED
e: java.lang.IllegalStateException: Storage for [/Users/ryan/repos/ryan/fsryan/consulting/wagemix/monolith/site/build/kspCaches/js/jsMain/symbolLookups/file-to-id.tab] is already registered
David Herman
08/20/2025, 7:02 PMChristiano
08/27/2025, 7:32 AM.form-floating>.form-select:hover~label
is not supported in a CssRule
?
I'm trying to create something akin to the Bootstrap floating label but this selector ~
doesn't seem to work when I add it. Even when adding it manually in the inspector-stylesheet
in my browser itself, it does not seem to work. 😅