5 ms·
Show HN: Lucia – 3kB Vue Alternative
- superasn 6y agoThis can be a useful alternative for small web apps similar to how AlpineJS is but please don't call it an alternative to Vue. As a matter of fact Evan You (the creator of Vue) himself created a blog post about this topic (1) (1) https://blog.evanyou.me/2013/11/04/simplify/ https://blog.evanyou.me/2013/11/04/simplify/
- aidenyb 6y agoThank you, this is really useful. I'll be sure to check it out and take notes
- keb_ 6y agoI wonder what Evan You's position on this is today. I use and have been productive with a couple smaller libs (Preact, Mithril, Hyperapp) and never felt I was making major tradeoffs. I suppose everyone can have very different use-cases of course.
- LoSboccacc 6y ago> By scattering selectors all over the place the HTML template and the JavaScript code is tightly coupled so when you change one place you need to manually change the other place as well eh, it's not like if you change something in the vue state store you don't have to modify the template as well
- canada_dry 6y agoQuite impressive for a high school project. Kudos!
- aidenyb 6y agoThank you! I'm very happy I'm lucky enough to be in a magnet program at my school that allows something like this
- ev1 6y agoWhat do you mean "allows", they are mandating what you do in your spare time and don't allow open source projects?
- aidenyb 6y agoOh, not at all. What I meant was that not only am I able to work on something I enjoy, I'm also able to get support and use it for school as well - sorry if I worded that weirdly
- uallo 6y agoThis project seems more similar to the ones below than to Vue.js: https://github.com/alpinejs/alpine https://github.com/alpinejs/alpine (acknowledged in their readme) https://github.com/stimulusjs/stimulus https://github.com/stimulusjs/stimulus https://github.com/intercoolerjs/intercooler-js https://github.com/intercoolerjs/intercooler-js https://github.com/mavoweb/mavo https://github.com/mavoweb/mavo https://github.com/bigskysoftware/htmx https://github.com/bigskysoftware/htmx https://github.com/unpoly/unpoly https://github.com/unpoly/unpoly (ordered by GitHub stars)
- aidenyb 6y agoThank you, I'll be sure to look at these and add them in the Acknowledgements
- gavinray 6y agoI would make a joke about "we don't need any more frameworks" but his Github profile says he's a HS student, and he has 20 source repositories (many of which seem non-trivial) and just shy of 2 years of commit history. Regardless of whether or not this is really a "Vue alternative", this kid is killing it.
- aidenyb 6y agoThank you for the positive comments :)
- bachmeier 6y ago> I would make a joke about "we don't need any more frameworks" but his Github profile says he's a HS student I don't see why that's relevant. You shouldn't shit on someone else's project regardless of age.
- muglug 6y agoIt's the reverse! They're saying the kid is doing great!
- frutiger 6y agoSure but GGP is saying that if it wasn’t a high schooler, they would criticise the project. Therefore they would criticise a project based on the author’s age.
- shermanmccoy 6y ago"killing it" is slang for doing really well.
- Existenceblinks 6y agoDon't downvote me, when I was in highschool I barely be able to print star pattern (from exam) on DOS screen with C++.
- franciscop 6y agoI am a bit confused with the readme, is it a jQuery or a Vue alternative? Those are very different: > "a drop-in replacement for jQuery and vanilla JavaScript web apps" > "provides a declarative API similar to Vue to create views" But reading further from the code samples it seems like a Vue replacement and not a jQuery replacement. I made a 2.5kb jQuery replacement back on the day so was very curious if this would be another: https://umbrellajs.com/ https://umbrellajs.com/ I'd also recommend the author to use a spellchecker, since I've found typos generally decrease trust on a project and I can see two on the second paragraph alone.
- aidenyb 6y agoHi there, I agree the way I tried to communicate Lucia was kind of confusing - I'm pretty new to the javascript library space and I wasn't sure how to correctly communicate it. As per the other comments on this post, I'll definitely be shifting towards describing it as a Vue/Alpine alternative. UmbrellaJS looks really cool! I just left a star
- kaushikt 6y agoI'm just discovering UmbrellaJS. This is pretty sweet. I hate to say it but I like jQuery but don't like the heavy load times it comes with. Although, yes, I don't need jQuery but I would love to do things easily without bloating up my code. We will be looking into UmbrellaJS more.. thanks for this.
- xellisx 6y agoFor another alternative that really pushes TypeScript, check out http://aurelia.io/ http://aurelia.io/ .
- aidenyb 6y agoThis looks really cool! I love how they use es6 template syntax for text content
- gitgud 6y agoVery cool! Even though there's many projects in this space I love seeing new attempts from fresh perspectives. I was looking trying to find template iteration in your library and was surprised to find it listed as "l-join" which I haven't seen before. Seems intuitive now that I think about it though: <div l-use="ListRendering()"> <p l-join="fruits by , "></p> </div>
- aidenyb 6y agoThanks! (Love the username btw)
- SandroRybarik 6y agoCool stuff! I definitely try this out. Im looking forward for some inspiration. I recently created very similiar project to simplify web dev. In just 100LOC I came up with (I think clever) way of writing web apps without webpack or npm. Reactive, declarative, Elm-y style. if you are interested: https://github.com/SandroRybarik/nameless https://github.com/SandroRybarik/nameless
- aidenyb 6y agoAwesome! I hope you find Lucia useful. Your project looks cool, I just left a star :D
- TiredGuy 6y agoWe often see two sides of a spectrum in js framework approaches to templating: directive-driven and mental model driven. Vue and Lucia are good examples of directive-driven templates, with things like v-if, and JSX is a good example of mental model driven since you know the JSX markup is just js syntactically sugared to look like html and you then act accordingly. Here's another 3k library from the mental model side of the spectrum that uses a lit-html-like approach, where the template is just a string template literal: https://andrewfulrich.gitlab.io/barleytea/ https://andrewfulrich.gitlab.io/barleytea/
- aidenyb 6y agoThis concept looks really interesting. I like the analogy you gave for both types of libs
- kickasscoder 6y agoCheck this https://www.monkwhocode.com/2020/10/nodejs-v15-4-things-to-know.html https://www.monkwhocode.com/2020/10/nodejs-v15-4-things-to-k...
- kickasscoder 6y agohttps://www.monkwhocode.com/2020/11/javascript-snippets-interview-questions.html https://www.monkwhocode.com/2020/11/javascript-snippets-inte...
- deleted 6y ago[deleted]