okarm
02/17/2025, 2:26 AMdate/time picker
. (filterable) dropdown menu
.
• Beware of Modifier.weight
and Column/Row spacing attributes. Both are not-quite-right
• Inconveniently placed KDoc. It is placed on Types. But in practice you use factory functions to instantiate those Types (e.g. CssStyle.base {}
, Color.rgb()
). And because of the way IntelliJ IDEA displays the quick-doc popup, the KDoc is hidden from you - the factory function has no KDoc to display and the receiver (CssStyle
, Color
) is resolved to the companion object
of the Type, which also doesn't have any KDoc. Therefore, there are no symbols in your actual application code that would allow you to look up the KDoc of Kobweb components with a single shortcut.
• A first party abstraction over XHR for file uploads with progress report would be a nice to have
The Ugly
• I don't know. So far I haven't encountered any unfixable ugliness.
Would I recommend Kobweb to others?
For lightweight use cases similar to mine, yes. But only under the condition that you have existing knowledge of both HTML + CSS and Compose. Kobweb is not a learning tool for web dev newbies. If you don't know HTML/CSS or Compose UI, you'll be confused by the mixing and matching of Kobweb-specific layouts + modifiers and Jetbrains Compose/HTML tags + attrs.
For larger projects, projects with unclear vision of future development, no. Stick to well-understood JS frameworks.Skaldebane
02/17/2025, 2:34 AMokarm
02/17/2025, 2:40 AMHTML and JS are far simpler to hot reload, Compose on ART? Not so much.Absolutely! But I am now forever spoiled and I simply... expect better. Google spends what - 15? 20? or more? million dollars per year on Android platform development. For that kind of money I'd expect Hot Reload to be a solved problem by now.
Skaldebane
02/17/2025, 2:44 AMSkaldebane
02/17/2025, 2:46 AMDavid Herman
02/17/2025, 4:02 AMDavid Herman
02/17/2025, 4:03 AMDavid Herman
02/17/2025, 4:05 AMDavid Herman
02/17/2025, 4:07 AMDavid Herman
02/17/2025, 4:14 AMDavid Herman
02/17/2025, 4:15 AMDavid Herman
02/17/2025, 4:18 AMgradle --continuous
is an amazing feature), and beyond that, I just need to kick a "reload" request to the browser when I detect the build is done, so I have to send lots of appreciation to the browser as well.David Herman
02/17/2025, 4:22 AMDavid Herman
02/17/2025, 4:22 AMDavid Herman
02/17/2025, 4:26 AMSkaldebane
02/17/2025, 1:17 PM