cirrus, to webdev
@cirrus@mstdn.social avatar

Started writing a decision log for our #DesignSystem. Documenting why we chose to build plain ol' #HTML and #CSS where we can and #WebComponents where client-side #JS is needed is turning into a bit of a manifesto. Essentially we're using (and encouraging others to use) #ProgressiveEnhancement 😉

dletorey, to 11ty
@dletorey@front-end.social avatar
paulcuth, to random
@paulcuth@mastodon.social avatar

Happy JS Naked Day!

To celebrate https://rss-is-dead.lol, a site that usually leans on JavaScript for async data fetching, is today demonstrating how a reduced experience is better than a broken one. 😊

ayo, to accessibility
@ayo@ayco.io avatar

Will probably be hated for this… why do #accessibility advocates often come off as preachy when I hear them talk? To the point that they will say (at times indirectly) that they care for people and others don’t… I get that it could be a frustrating field, but sometimes devs just need educating—admittedly including me 🙋‍♂️

itsjoshbruce,
@itsjoshbruce@phpc.social avatar

@jaded_jouska @ayo: It’s a fair question and observation.

And, the most oft offered counter is: The references are old and no longer relevant or applicable.

And yet, here we are.

Talking about the importance of adding alt text to images…

still…

Which is a pretty low bar, and only marginally more effort than choosing a semantically appropriate HTML element.

2/

#HTML
#WebDev
#Accessibility
#ProgressiveEnhancement

stvfrnzl, (edited ) to accessibility
@stvfrnzl@mastodon.online avatar

"Out-of-touch, influential old guy working in web accessibility for many years claims that all hope is gone and only #AI can save us. People who he thinks are disabled will receive a more “concise” UI, because he thinks they are not able to use a computer and assistive technology."

https://stevefrenzel.dev/posts/shut-up-jakob/

I might be late to the party, but here are my thoughts as a newbie.

#accessibility #a11y #disability #WebDev #frontend #html #css #JavaScript #ProgressiveEnhancement #llm #ui #ux

aral, (edited ) to SmallWeb
@aral@mastodon.ar.al avatar

New blog post: Streaming HTML

https://ar.al/2024/03/08/streaming-html/

Let me show you how easy it is to create a simple counter web app using the new Streaming HTML workflow in Kitten before peeling away the magic layer by layer so you learn how to make the same app using:

• HTMX & WebSockets
• Plain old JavaScript, and, finally,
• Without Kitten in pure Node.js.

Enjoy + let me know what you think.

:kitten: 💕

jgarber, to accessibility
@jgarber@mastodon.cc avatar

New #HTMLWebComponent to add to your #WebComponents collection: <aria-collapsible>

Generate progressively-enhanced collapsible regions using #ARIA States and Properties.

💻 Code: https://github.com/jgarber623/aria-collapsible

🧩 Demo: https://jgarber623.github.io/aria-collapsible/example/

📦 Package: https://www.npmjs.com/package/@jgarber/aria-collapsible

#accessibility #a11y #ProgressiveEnhancement #WebComponent

voxpelli, to random
@voxpelli@mastodon.social avatar

This year it’s 12 years since I built what I still think is the most pure implementation of how I personally envision a social feed of a site to work (except maybe the masonry effect). The social feed at Flattr: https://www.dailymotion.com/video/xqfed0

voxpelli,
@voxpelli@mastodon.social avatar

Tech wise it was built using on top of a fully site.

It utilized an AJAX form submitter coupled with a simple patch instruction from the server of how to update the site: https://voxpelli.com/2012/04/server-controlled-ajax-at-flattr/

voxpelli,
@voxpelli@mastodon.social avatar

The one thing I would make different today is not to drop the or the approach – it’s that I would drop jQuery and instead use some minimalistic modern helpers.

In fact, this is what I did when I worked for the HD-Sydsvenskan newspapers. I based those helpers on my personal collection of helpers and in the end we open sourced them (as we open sourced a module that needed them): https://github.com/Sydsvenskan/js-dom-utils

voxpelli,
@voxpelli@mastodon.social avatar

I still think that it’s easiest to create #noJs HTML sites with <form> tags initially and then use #progressiveEnhancement to turn them into a smoother experience.

That’s still how I would build such a social feed today.

alter_kaker, to webdev
@alter_kaker@hachyderm.io avatar

For a simple blog, does it make sense to provide a fully static editing interface, with nothing but HTML forms, as the baseline, and only build a REST API + some sort of js based flow later as an alternative?

knowler, to random

Brainstorming strategies. Here are a few:

  • A custom element that wraps a native form control and augments it (i.e. adds/modifies attributes for the slotted light DOM element and provides a shadow DOM stylesheet to improve the affordance of the new behaviour).
  • A form associated custom element that wraps a native form control and replaces it (similar to fallback content for &lt;audio&gt; or &lt;video&gt;).
  • A custom element that has a few options and can choose between the right one for the circumstances (similar to &lt;picture&gt;, &lt;audio&gt;, and &lt;video&gt;).
knowler, to random

The problem with our approach to is that we’ve forgotten the “Web” part. It’s really important and it informs what to expect from the “components:” how they work, how we build them, and how they should work with the rest of the Web. Unfortunately, we’ve allowed frameworks built on premises like “ is dead” inform our expectations.

scy, to vim
@scy@chaos.social avatar

Fun fact: My are running on a variety of machines. Some with X, some with Wayland, some with Windows, some with just a framebuffer text console.

And these machines run vastly different versions of common tools. Some are on 8.0, some on Vim 9.0, some on 0.7, some on Neovim 0.9.4.

So I'm using – in my configs!

Using exists() and &t_Co:
https://codeberg.org/scy/dotfiles/src/commit/7d65d1fbeb45fff0cf8f22fbe153f7e129dddfd6/.vim/scy-config/current-line.vim

Or using has('nvim-…') and has('patch-…'):
https://codeberg.org/scy/dotfiles/src/commit/7d65d1fbeb45fff0cf8f22fbe153f7e129dddfd6/.vim/plugin/scy-style-columns.vim#L9

molily, to javascript

What I'm missing in the community that promotes are empiric studies on why, how and when fails. The broad assumption is “more JS = more points of failure, slower” and the broad conclusion is “less JS = better, faster”. Which is true – in a broad sense. But there are important nuances. It's necessary to know which parts fail frequently and why. To take action we need to relate this to how crucial the parts are and how the fallbacks look like.

simevidas, (edited ) to random
@simevidas@mastodon.social avatar

I guess their logic was “We need JavaScript for the ‘My time’ option anyway, so why bother including the official race time (and date) in the HTML document? Let’s just generate it all with JavaScript.”

That logic is wrong.

edit: The correct approach would have been to include the track time and timezone in the HTML document, and then in JavaScript add the My time/track time toggle functionality, and set it to My time (the user’s local time).

(https://www.formula1.com/en/racing/2023/Italy.html)

inautilo, to CSS
@inautilo@mastodon.social avatar


CSS-only scroll animations · “It’s absolutely amazing what CSS is capable of nowadays.” https://ilo.im/13zsup


trey, to random

Getting ready to share my new project with the world. Do you know anybody who would be into this?

https://blaze.horse/

#Django #ProgressiveEnhancement

qunit, to random
@qunit@fosstodon.org avatar

Guess who's number 1 on the test-runners Speedlify, for the third year in a row!

https://www.speedlify.dev/test-runners/

https://qunitjs.com

krinkle,
@krinkle@fosstodon.org avatar

One of the things that keeps https://qunitjs.com lean is our approach to search.

Rather than the popular JS-only Algolia DocSearch widget at ~100KB, we use a fast 2KB alternative based on HTML5, with progressive enhancement.

I recently published this as re-usable package:
https://github.com/Krinkle/typesense-minibar

westbrook, to random
@westbrook@mastodon.social avatar

partners with the likes of :not(:defined) to make progressive enhancement a more natural part of component development than ever.

builds on top of that, and once Firefox ships things powerful API the distance between "page load" and "page needs JS" can be even further apart.

It's powerful to lean into the existing web APIs to learn new and exciting ways to support our clients while continuing to push the boundaries of those APIs at the spec level.

westbrook,
@westbrook@mastodon.social avatar

Sure, not all content requires this level of interoperability and would benefit from an alternate path of development. and are also opt-in, so if/when you need it later, it'll be there waiting.

These APIs progressively enhance any page you deliver, and they can add to your development by adding them to your work when you need them. Whether that's scale, complexity, reusability, or a feature you discover as valuable in your own investigations.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • kavyap
  • DreamBathrooms
  • cisconetworking
  • khanakhh
  • mdbf
  • magazineikmin
  • modclub
  • InstantRegret
  • rosin
  • Youngstown
  • slotface
  • Durango
  • tacticalgear
  • JUstTest
  • ngwrru68w68
  • everett
  • normalnudes
  • cubers
  • tester
  • thenastyranch
  • osvaldo12
  • GTA5RPClips
  • ethstaker
  • Leos
  • anitta
  • provamag3
  • lostlight
  • All magazines