The other file in that example is JS, and interestingly it uses a plain template literal without an `html` tag or anything to help with language tools and syntax highlighting
Long time lurker.
Pointed an error in a website.
Didn't try to sell you nothing or convince you about anything.
Corrected/edited when the site worked for me as I see others do here.
Sus you say? Can't imagine the nerves in your life.
Best of luck.
Cutesy cartoon saying no JavaScript but all examples are JavaScript. Html first but you need npm install. Convinced this is satire designed to annoy me.
Agreed...and honestly I didn't scroll any further. I saw, "No Javascript Required" and scrolled back to the top, went to the docs and looked at the example so I could see what this was like. Then I saw Javascript.
I just think that if you are saying so boldly that you don't need to use Javascript, then maybe your first example should be without Javascript?
FWIW I kind of feel like “no js” may be a pipe dream today. I see a lot of talk about it but very few sites actually do it; there just seems to be a lot of pressure to use the next big JS framework in the community.
Cannot stress enough how every framework for development that starts with "npm install" is inaccessible to most amateurs by its very nature.
I'm not sure what drives developers to be so insular with thought and make so many assumptions about others. It seems like basic gate-keeping activity, but maybe it's just ignorance.
I'd say otherwise. JS is one of the largest and most vibrant communities because it is the opposite of hard. And because the amount of investment you get in and the amount of payoff you get out is emotionally delightful. And because there is a huge and competitive ecology of pedagogy on YT and other places.
You don't get to this size because it's so hard. People aren't joining JS for the relatively low prestige, they aren't joining because the paycheck compares any better to any other part of the industry, and they aren't joining because of any promise of intellectual development — they're joining because it's the most accessible doorway in the tech community today.
There's no other part of the industry that's so clogged with amateurs trying to join.
The only other industry I can think of which is so hot in its community energy would be Python and ML, but they appeal with a different set of values. ML is hot because it's prestigious, ML is hot because the job market is insanely hot, ML is hot because it promises boundless intellectual exploration.
I'm a senior software engineer with 20 years experience and I still struggle with npm/yarn nearly every time I use it. In my experience, the most senior people on JS teams also struggle with dependency problems, react, etc constantly. This is not a struggle I experience or see others experiencing with Java or C#. Python environments and tools can be frustrating but not anywhere near as much as JS tools.
I agree. I’ve used nodejs quite a bit, but I rarely need it for whatever I am doing and quite often actively avoid it because all of that shit is a pain in the ass over just writing a script in an ide or even direct text.
Normally I wouldn't object like this, but this actually confused me so I'll share it. This should be "HTML-first full stack web framework". I initially read as "The HTML (first full stack web framework)" which immediately soured me on the claim to somehow be the first full stack web framework. Or some other reformulation of the motto which eliminates "first full stack web framework" from a potential garden-path interpretation: https://en.wikipedia.org/wiki/Garden-path_sentence , so as to spice up my grammar complaint with an HN-style link of interest.
HTML-first web framework, where you type server-side JS... first. I have nothing against Node and SSR but why call it "HTML-first"? It also has client-side JS. It's just a page.
In any case the gigantic pink sheep and clouds that is their entire landing page demonstrate those are either not serious people, or their audience isn't.
Felt like they were trying to do the Remix front page thing, but Remix does it right, it shows you why you want to use it as you scroll down, though to be fair, I don't know why websites that do that, don't just have a video instead. Give me a traditional website with scrolling that feels familiar and a video. I'll click play.
I think having the cutesy landing page is designed specifically to exclude the kind of curmudgeons who consider themselves super serious developers who only do super serious work who are too good for fun. If you've ever hung out in dev communities that skew younger it's like 90% memes and mostly positivity.
They're sending all the right signals that working with them would be enjoyable which is good when you want to build a community and are just starting out.
When I open the page of a framework, I want to quickly understand the value proposition of a framework. Of course the attitude you're describing, is more about memes, being cool, having fun, and having lots of free time, and yes, a lot of modern young "developers" are like that these days. They don't do much developing, but they sure have a lot of fun.
You must have had a very different experience than me because I will literally never pump out as much code as I did when I was ~14-19. Free time, nigh infinite motivation and energy, and a brain that sucks up information like a shop vac after a flood.
>HTML-first web framework, where you type server-side JS... first.
Yeah, I think a lot of us are bumping against that. They need to change either their examples or their branding...
>In any case the gigantic pink sheep and clouds that is their entire landing page demonstrate those are either not serious people, or their audience isn't.
...but hard disagree here. Don't change that! That page is fun and positive. You can be serious as in "deliberate" and "thoughtful" without being serious as in "humorless" or "somber". The former types of seriousness are the more important ones when you're trying to get stuff done.
I think it's completely fair to criticize it. It's claiming to be "the" html framework, but then you have sveltekit and Astro which are far more HTML friendly and easier to get started on for non JS devs.
This just comes off as a ploy to hijack the meaning of HTML.
Continued: No one is complaining about the framework itself. Everyone is talking about what you're claiming to be, which you're not. The quality of the framework itself hasn't been alluded to.
The docs do a really poor job of explaining what value the framework is bringing to the table. I’d contrast that to HTMX, Vue, Svelte and many other frameworks that do. (You may or may not like those frameworks but they all stand for something.). Even the new React documents do a great job of explaining they value of React even though React is so established it could easily have a “your team is using React, everybody is using React, you will use React” attitude. Instead “enhanced” jumps right into “Meet the new Javascript routing framework, same as the old Javascript routing framework”.
Maybe it is “No Javascript” in the same sense that software vendor Salesforce.com had the tagline “No software”.
"HTML First" versus "HTML Only" aside, I hadn't heard of this one before, and it looks promising.
I've been looking for simpler frameworks that do less, because I'm tired of coming back to projects I've set aside for six months or a year and having to basically relearn and rewrite them to match all the updates and incompatible changes the framework made in the meantime.
At first glance this looks like it handles the essentials and doesn't try too hard to handle anything else; I'm going to give it a try.
Looks great, congrats! For those wondering, it's a Web Components framework in the style of Next.js. Web Components are standard HTML elements, hence HTML-first (at least that's how I interpret it).
It looks like a 1990s webpage with modern visual design made for children. I kept waiting for the <blink> marquee and the "under construction" gif to show up as I was scrolling through.
So I think what they are going for is making client-side and server-side html generation feel much more similar. If they are doing this without the huge inefficiency, of say, React server-side rendering, it seems like a good idea.
Pretty sure what they mean by "no Javascript" is no client-side Javascript.
The idea of component-based rendering for server-side is actually nice.
As others might have pointed out, HTMX is an actual HTML framework. Load a single is file and use attributes in your HTML to perform actions and bind data.
Great work team enhance.dev, web components is the way to go.
I read a lot of strong opinions about the use of NPM when the framework boasts “No JavaScript”. Probably it’s a fair point. But I’d still like to see more enhance and Lit-like frameworks - yes I said framework, cause it takes you one step closer to the native browser.
81 comments
[ 1.9 ms ] story [ 160 ms ] threadEdit: Or JSX. I dunno. I successfully avoided learning react so far.
I assume that by default all that JS runs on the server and HTML gets returned to the browser.
What examples are you referring to?
GitHub says ~30% of that repository is JavaScript code. Seems strange for a HTML-first framework.
https://github.com/enhance-dev/enhance-starter-project/blob/...
They seem to be using tagged template literals (like lit-html does). They are essentially functions.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...
Edit: maybe was hugged. It's working now. But worth to checkout.
I just think that if you are saying so boldly that you don't need to use Javascript, then maybe your first example should be without Javascript?
FWIW I kind of feel like “no js” may be a pipe dream today. I see a lot of talk about it but very few sites actually do it; there just seems to be a lot of pressure to use the next big JS framework in the community.
Also analytics and so forth.
https://dev.to/thormeier/dont-try-this-at-home-css-as-the-ba...
We already solved the CSS-as-a-backend problem. Too easy!
Jokes aside, this is every bit as unsurprising and dumb as I had hoped it would be. It's perfect.
Jokes aside, it's a full stack framework, you need some server-side language. It's the served html that is (optionally) javascript-free.
Sure, not exactly "pure", but the point was basically to make it look like that.
I'm not sure what drives developers to be so insular with thought and make so many assumptions about others. It seems like basic gate-keeping activity, but maybe it's just ignorance.
You don't get to this size because it's so hard. People aren't joining JS for the relatively low prestige, they aren't joining because the paycheck compares any better to any other part of the industry, and they aren't joining because of any promise of intellectual development — they're joining because it's the most accessible doorway in the tech community today.
There's no other part of the industry that's so clogged with amateurs trying to join.
The only other industry I can think of which is so hot in its community energy would be Python and ML, but they appeal with a different set of values. ML is hot because it's prestigious, ML is hot because the job market is insanely hot, ML is hot because it promises boundless intellectual exploration.
(I just copy/pasted the website's <meta> description without thinking too much about it. I agree though.)
In any case the gigantic pink sheep and clouds that is their entire landing page demonstrate those are either not serious people, or their audience isn't.
They're sending all the right signals that working with them would be enjoyable which is good when you want to build a community and are just starting out.
Yeah, I think a lot of us are bumping against that. They need to change either their examples or their branding...
>In any case the gigantic pink sheep and clouds that is their entire landing page demonstrate those are either not serious people, or their audience isn't.
...but hard disagree here. Don't change that! That page is fun and positive. You can be serious as in "deliberate" and "thoughtful" without being serious as in "humorless" or "somber". The former types of seriousness are the more important ones when you're trying to get stuff done.
How about this example?
https://github.com/enhance-dev/enhance-starter-project/blob/...
This just comes off as a ploy to hijack the meaning of HTML.
Maybe it is “No Javascript” in the same sense that software vendor Salesforce.com had the tagline “No software”.
https://github.com/enhance-dev/enhance-starter-project/blob/...
I really enjoy this website's look&feel
More discussion from last year: https://news.ycombinator.com/item?id=32987840
I've been looking for simpler frameworks that do less, because I'm tired of coming back to projects I've set aside for six months or a year and having to basically relearn and rewrite them to match all the updates and incompatible changes the framework made in the meantime.
At first glance this looks like it handles the essentials and doesn't try too hard to handle anything else; I'm going to give it a try.
Utterly useless.
Pretty sure what they mean by "no Javascript" is no client-side Javascript.
The idea of component-based rendering for server-side is actually nice.
:-O
Is there some mechanism to push component updates to the client once the state changes?
I read a lot of strong opinions about the use of NPM when the framework boasts “No JavaScript”. Probably it’s a fair point. But I’d still like to see more enhance and Lit-like frameworks - yes I said framework, cause it takes you one step closer to the native browser.