kotlinx.html
imba
Our great sponsors
kotlinx.html | imba | |
---|---|---|
11 | 45 | |
1,549 | 6,230 | |
1.4% | 0.5% | |
7.4 | 9.5 | |
about 1 month ago | 3 days ago | |
Kotlin | JavaScript | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
kotlinx.html
-
How to use htmx with ktor
1 Clone this repo https://github.com/tom-delalande/html-to-kotlin-converter and open in intellij 2 In the root of that project folder, create input.txt and add the component/html that you want to convert (feel free to pick a component from tailwind), run main in that project and it'll be converted to kotlin ktor html DSL in output.txt (basically, that's the readme of that project lol) 3 in your ktor project (make sure you already added ktor-html from kotlin team), respond to a route like so
-
Dart 3 will be on pair with Kotlin and other top languages (you can see more features in the proposal)
As for the strange infix syntax, you're correct - it's not important (for Dart anyway). Kotlin supports writing code that have DSL like syntax making things like typesafe HTML or Jetpack Compose possible.
- I taught the chat bot an alternative syntax for HTML, called HBML, basically just braces instead of tags... we are so screwed
-
"A New Programming Metric": my attempt to come up with a better way of handling the "how good are you at a programming language" question.
I'm not familiar with JavaEE/JSP so I cannot really answer that, why do these technologies need a special IDE? Does JSP even make sense with Kotlin? If I was stuck with JSP I'd probably use Java since that's what JSP was made for. Kotlin has other solutions like https://github.com/Kotlin/kotlinx.html
-
Create any kind of app with Kotlin
Html DSL in Kotlin. See it on Github.
-
How do you imoprt custom fonts in Kotlin/JS?
If so, and if they don't provide an easy way to set a font family list, you may have to escape into a raw block: https://github.com/Kotlin/kotlinx.html/wiki/Style-and-script-tags
-
Building a DOM DSL in Kotiln
You might like to leave a comment here, someone requested svg support in the Kotlin HTML dsl https://github.com/Kotlin/kotlinx.html/issues/144
- Is there an equivalent for Compose Web for server side Kotlin apps?
-
Show HN: Imba – I have spent 7 years creating a programming language for the web
Thanks for sharing, I really like projects like this. And the website is really informative.
I find it less of a new language and more of a JS preprocessor, removing lots of the cruft and integrating XML-tags and CSS in a very neat way.
What I miss:
1) I feel the web is shifting to more type checking. TS, Elm, Kotlin.js... I personally also prefer more typesafety, especially if the project grows in LOC/team size.
2) Compared to JSX, Imba does a much better job in integrating adjacent technologies. Though I much prefer these to be integrated in an eDSL fashion. For example how Elm does HTML templating (in Elm) or Kotlinx.html[1].
Just taste i guess. Good luck with yr project!
[1]: https://github.com/Kotlin/kotlinx.html
-
Kotlin Team AMA #3: Ask Us Anything
I do use kotlinx.html and while there is a lack of the documentation about the tags, most of them are already implemented (as far as I know they are automatically generated) and the ones that aren't automatically generated can be implemented manually in your own project.
imba
-
Ask HN: What are some unpopular technologies you wish people knew more about?
Imba. The best web programming language ever made.
https://imba.io/
-
Portugal. The Man – Official Website Is a Google Sheets Document
I agree. I was looking for the same thing.
They’re not easy to create but side by side code/result demos like the ones I saw on https://imba.io/ make it very clear on what I’ll be getting into as a developer.
- Imba – The friendly full-stack language
- Clojure is a product design tool
- Fore – Declarative user interfaces in plain HTML
-
Framework for a frontend-only project?
You might get away with Svelte (not Sveltekit) here since it compiles down to javascript. Another fun framework to try out for this might be https://imba.io/, which also has an option to compile things down to pure HTML, CSS & JS (plus it’s very fun to work with).
-
Thoughts on Svelte
I've been using Svelte exclusively for the past 3 years or so. I love it and will keep using it as my main solution for interactivity. It's fast to use and execute, produces small apps, and it's extremely economical in how you express components.
The confusion the author expresses with $: reactive statements and store auto subscription with the $ are unwarranted IMO. It's really just a lack of familiarity but this kind of stuff becomes intuitive very quickly.
My criticism of Svelte is rather that they haven't gone deep enough into the compiler-based approach.
Would be great if there were something like .svelteStore files where you had all the automatic reactivity tracking without having to use a component. Or some kind of improvements into writing styles. With a compiler you can do anything you want and I think Svelte has been a bit timid, maybe to not scare people away.
For example Imba[1] also bet on a compiler-based approach (years before Svelte existed) and created their own language/framework/compiler. They have come up with amazing solutions to many problems. It's a shame they bet on Ruby aesthetics though and also that they aren't investing into marketing/docs.
Of course, one might argue that using a compiler is a bad idea for a number of reasons. And yeah of course there are objective issues to any approach, but you have to pick your poison. All in all, Svelte has made me tremendously productive compared to using other solutions for years (React, Vue, Mithril, Inferno, etc).
I will say though that I would rather use a solution that doesn't have any reactivity at all. Mithril and Imba have this concept of just "redrawing the whole thing" like a game GUI without having to worry about reactivity. Cognitively speaking, no reactivity is the best mental model IMO. With any reactive solution, it's very easy to fall into complex reactive dependencies which can be hard to track. The author of Imba has a video from 2018 where he talks about this[2].
[1] https://imba.io/
[2] https://www.youtube.com/watch?v=jwoApTLvRdQ
-
The Io Language
A code snippet showing a simple program right on the home page and "selling" whatever features makes it special would go a long way. It's quite off-putting to have to delve deep into a guide in order to get a feel for a language.
Some examples done right:
https://lfe.io
https://elixir-lang.org
https://imba.io
https://ocaml.org
-
Why do so many CS grads seem to look down on webdev?
At the same time, my heart is kind of in the web stuff and I find it a lot more exciting personally so it's hard for me to leave. You can do so much more with web tech and all the new ideas Tcoming from it and the pace it's developing is really . I just don't understand why React is becoming the standard when it's a complete nightmare compared to where we should be. I mean, this is literally insane, especially when things like Svelte exist - or even better, Imba. The day Imba becomes the standard is the day I love web dev again.
What are some alternatives?
http4k - The Functional toolkit for Kotlin HTTP applications. http4k provides a simple and uniform way to serve, consume, and test HTTP services.
js-framework-benchmark - A comparison of the performance of a few popular javascript frameworks
vertx-lang-kotlin - Vert.x for Kotlin
React - The library for web and native user interfaces.
ktor - Framework for quickly creating connected applications in Kotlin with minimal effort
Tailwind CSS - A utility-first CSS framework for rapid UI development.
spark-kotlin - A Spark DSL in idiomatic kotlin // dependency: com.sparkjava:spark-kotlin:1.0.0-alpha
svelte-preprocess - A ✨ magical ✨ Svelte preprocessor with sensible defaults and support for: PostCSS, SCSS, Less, Stylus, Coffeescript, TypeScript, Pug and much more.
javalin - A simple and modern Java and Kotlin web framework [Moved to: https://github.com/javalin/javalin]
coffeescript - Unfancy JavaScript
kotlinx.serialization - Kotlin multiplatform / multi-format serialization
htmx - </> htmx - high power tools for HTML