I spent 5 months building a framework and finally shared it. No.JS — an HTML-first reactive framework. What if you could build reactive web apps using just HTML attributes, no JavaScript? It started when I needed a dropdown that filtered a table. Should've taken ten minutes. Instead: six files, forty lines, just to say "when this changes, re-fetch that." So I built something where that's four lines: <div state="{ query: '' }" get="/api/search?q={{ query }}" as="results"> <input model="query" /> <li each="r in results" bind="r.name"></li> </div> No imports, no hooks, no build step. ~11 KB gzipped, zero dependencies. It won't replace React. But for landing pages, dashboards, prototypes, it works. Open source (MIT): https://lnkd.in/dkwsYMKj #opensource #webdev #html #frontend #javascript #js
But what you do when you need some more difficult logic? CSS? If there is no separation it will just end up as a hot mess where it's even hard to tell which part is the logic.
every single effort to avoid javascript is valid ahaha
Congrats! I’ve been building web apps since 2007, and over the years I’ve seen both the advantages and the downsides of very large frameworks. They can be powerful — but they can also add a lot of unnecessary complexity. I’m a big believer in keeping things as simple as possible. That’s one of the reasons I appreciate what David Heinemeier Hansson (DHH) promotes about building software. Even though I’m a PHP backend developer, I really enjoyed his keynote at a Ruby on Rails event — it’s definitely worth searching for on YouTube. Simplicity scales better than complexity
How does this implementation handle debounce?
I am sure some junior is going to pitch their boss saying that NoJS uses no JavaScript, until they realize, that in fact this library uses JavaScript. 😂
So you created a custom DSL simply to avoid JavaScript?
Good job. Next step would be introducing a good intellisense feature or extension.
Looks a lot like Alpine
Que projeto interessante!!!!
Interesting, but why not using Htmx directly?