Show HN: LemonadeJS – A micro JavaScript library for building web interfaces(lemonadejs.net)
lemonadejs.net
Show HN: LemonadeJS – A micro JavaScript library for building web interfaces
https://lemonadejs.net/v1
27 comments
Mithril has a detailed “why this instead of react/vue/etc” article https://mithril.js.org/framework-comparison.html that I think should be mandatory for any library entering a crowded space like this. If only because i want to know the priorities of the developers.
That would be nice, but also we observers are not owed any such explanation by the creator.
No, but communities can set expectations, and then someone can choose to meet or buck the expectations of the community at their own risk.
A good example of this is the TodoMVC convention. Instead of making "whatever demo app you choose" a convention developed to make a Todo app, so that people could compare frameworks in a more "apples-to-apples" way. A new framework with a Todo demo would likely get more traction than a framework with a Calendar demo, because it's easier to evaluate and understand how it works.
A good example of this is the TodoMVC convention. Instead of making "whatever demo app you choose" a convention developed to make a Todo app, so that people could compare frameworks in a more "apples-to-apples" way. A new framework with a Todo demo would likely get more traction than a framework with a Calendar demo, because it's easier to evaluate and understand how it works.
Another would be the "Real World" example apps:
https://codebase.show/projects/realworld
https://github.com/gothinkster/realworld
https://codebase.show/projects/realworld
https://github.com/gothinkster/realworld
Looks interesting, but I think for a minimal JS framework I'd probably go with AlpineJS. It's pretty much Vue without components.
https://alpinejs.dev/
https://alpinejs.dev/
So what is the current opinion of the JS ecosystem on two-way bindings?
Kind of mixed. In Vue, two way bindings are achieved with the v-model directive but that is literally the syntax sugar equivalent of having a prop and an event.
That is, the two way binding with v-model is no different to doing it "manually" anyway.
That is, the two way binding with v-model is no different to doing it "manually" anyway.
Vue handles it the best way, imo. Svelte does a decent job, too. I think it's basically at the point where it's considered the standard now, though, and basically every library just has it's own take on how to do it.
Personally, it tends to be convent in practice for forms but is an unholy abomination elsewhere. I'd eschew it altogether and deal with the extra verbosity when it crops up.
Looking at the site's example:
https://lemonadejs.net/v1/examples/hangman
... I see a lot of ugly ES5 code where everything is prefixed with self. How is this progress?
https://lemonadejs.net/v1/examples/hangman
... I see a lot of ugly ES5 code where everything is prefixed with self. How is this progress?
[deleted]
What you are criticizing is (the fashion of) the example app there, not the functionality or interface of the framework itself.
The lemonade.element function just wants a template and an object with some methods. Whether you use ES6 classes or proxies, or ES3 constructor functions with prototypical inheritance, or object literals to define that object is a matter of taste, and it is all up to you.
The lemonade.element function just wants a template and an object with some methods. Whether you use ES6 classes or proxies, or ES3 constructor functions with prototypical inheritance, or object literals to define that object is a matter of taste, and it is all up to you.
Umm, why do new microframeworks constantly capture HN attention? I'm trying to understand the ecosystem between Vue and VanillaJS.
Because there was once a time when Vue was being introduced on HN. They need to start somewhere.
[deleted]
LemonadeJS is pretty much vanilla, no depencies, no transpiling.
When people say "VanillaJS" they typically mean "no framework, just browser APIs"
obligatory: http://vanilla-js.com/
how's it compare to alpinejs and stimulus?
It looks really nice IMO, simple in a good way. A real world appliction as an example would be great though.
A developer sent this one, which it is quite simple and interesting.
https://lemonadejs.net/v1/examples/hangman
https://lemonadejs.net/v1/examples/hangman
Lemonadejs is a super lightweight vanilla javascript micro-library (4Kb). No dependencies, just Vanilla JS.
This site breaks my browser back button. I find that enormously frustrating.
I'm learning how to use it, and it is pretty awesome imo