Lemmy should rely less on JavaScript.
Currently without JS you can’t even expand the main menu.
Additionally, all those controls should also work without JS.
Or worse option - since they only work with JS, don’t show them when JS is disabled.
Lemmy should rely less on JavaScript.
Currently without JS you can’t even expand the main menu.
Additionally, all those controls should also work without JS.
Or worse option - since they only work with JS, don’t show them when JS is disabled.
UI and backend are separate so a UI can be created which doesn’t use JS.
There are only two devs working on the project and the backend takes most of their time. Using JS in the UI expedites the process of implementing features which may be why they went for it.
The user experience on javascript-enabled browsers is also really great. Going for a nojs-first approach would hurt UX a lot, especially on mobile.
Mobile has dedicated app which make this issue mostly moot.
No, because app shouldn’t be required. It should be simple website with RWD, nothing special.
I agree. And the app uses flutter which isn’t good in lower end devices (such as my Redmi 4X), so it’s not ideal.
I don’t want to install an app to get the same experience as the website but without tabs.
“Going for a nojs-first approach would hurt UX a lot, especially on mobile.”
WTF?!
It would. If used properly, JS can have really improve UI/UX. Sure, you can make good JS-free pages, but JS can make it easier and arguably better (by being more dynamic, which appeals to a wider audience than static pages).
No, it would not.
Progressive Enhancement
Not having that into account makes it harder when you want to replace it without JS and doing more requests to the server side.
It is preferable that if you use JS in the begining to make it easier, take into account that possibility.
Maybe, as a WebDev student I didn’t finish yet and can learn more into the basics, but the things I learned doing a replacement to Disqus in JSP without JS, later compared with the project this year with similar requirements but adding JS in the client side, got me into this.