pablolarah, to webdev
@pablolarah@mastodon.social avatar

🦊 Readability.js
by @mozilla
A standalone version of the readability library used for Firefox Reader View.
#Reader #webdev #js

https://github.com/mozilla/readability

nosherwan, (edited ) to javascript
@nosherwan@fosstodon.org avatar

:nodejs: :javascript: :typescript:

State of JS Runtime

I suggest we have a new survey similar to state of JS called state of JS runtime, to get an idea of which runtimes are most popular in the industry & what are they being used for. (its merely a question in StateOfJS)






🙋🏽‍♀️
Which runtime do you use & for what purpose?

m3tti, to webdev German
@m3tti@functional.cafe avatar

there is a big diffrence in software engineering and programming #webdev #php #js #java

reconbot, to javascript
@reconbot@toot.cafe avatar

Execa scripts are cool af https://github.com/sindresorhus/execa/blob/HEAD/docs/scripts.md

It abuses template functions to make shit like this work

await $echo foo

I love it!

#js

thopan, to linux German
@thopan@norden.social avatar

Welchen mit nutzt ihr unter , um , , , zu erstellen/bearbeiten?

Gerne teilen, danke euch.

minioctt, to programming Italian

Mm, comunque, quella mia particolare idea per sviluppare app web di 3 settimane fa (già volate?) alla fine è stata buona, penso (raro avvenimento). A parte che già l’avevo implementata nel codice di #WuppiMini, che quindi aveva iniziato a fungere sia lato client che server da uno stesso file #JS identico, l’altro dì ho separato buona parte di quel codice specifico in una libreria apposita della mia “collezione #SpaccDotWeb. 🫣

Usciranno minuzie da sistemare poi, ma il grosso funziona, nella repo c’è anche un #programma di esempio che la usa per chi vuole fare le mie stesse cose poco ortodosse. Ma comunque la sto già usando per tentare di tirare su una prima versione MVP di quel motore di ricerca bizantino che tanto vorrei avere… non tanto perché credo che possa mai funzionare lato client senza un #server centralizzato, ma più che altro perché non se fai finta che non avrai mai bisogno di riciclare del dato #codice, puntualmente una situazione uscirà e allora si finirà per piangere. 😠

https://octospacc.altervista.org/wp-content/uploads/2024/02/screenshot_20240226-165658_system_ui_1249140357565860738-677x1440.pngChe poi, io il proxy mini per WordPress l’ho creato inizialmente con l’intento di usarlo per pubblicare schermate dei giochi dal 3DS… ma non gioco mai con intento, solo un po’ così nei momenti di poco flusso in cui comunque non starei facendo cose più attive, ma proprio niente. Sono schiava del #JavaScript e ora vivo solo per quello senza trovare piacere nemmeno nei videogiochi, ciò fa assolutamente molto riflettere sugli interessi delle big tech e la cultura della dopamina, attenzione che i poteri forti vi tengono appiccicati ai loro prodotti. 🥹https://octospacc.altervista.org/2024/02/26/spac-web-semper-ovunquer/

#codice #JavaScript #JS #programma #server #SpaccDotWeb #WuppiMini

m3tti, to webdev German
@m3tti@functional.cafe avatar

How do you define simplicity in code? #webdev #php #js #java #go #programming

kubikpixel, to javascript
@kubikpixel@chaos.social avatar

«JavaScript Bloat in 2024»
– by @nikitonsky

Fast Internet is not really available these days. Not because of the connection, but because of the excessive data flow and JavaScript application on the pages. In my opinion, this is often too much of a good thing.

☝️ https://tonsky.me/blog/js-bloat/

#javascript #webdev #js #websec #a11y #web #website #fastweb #internet #data

aral, to macos
@aral@mastodon.ar.al avatar

If you were playing with Kitten¹ on macOS and noticed that live reloads were broken², they’ve now been fixed.

(Thanks to @laura running into the issue today.)

Run:

kitten update

To update to the latest version.

¹ https://codeberg.org/kitten/app

² Moral of the story: don’t define functions inside conditionals in JavaScript or you’ll run into cross-browser scope inconsistencies when the function is hoisted. Chrome and Firefox do it one way, Safari another.

#kitten #macOS #web #dev #js #javaScript

eric, to webdev
@eric@social.coop avatar
eric,
@eric@social.coop avatar

Here is a measure of how much developers choose to make browsers work (to parse, keep in memory, execute):
JavaScript download (all caching disabled, aka. cold load):
0.2 MB – Wikipedia
0.4 MB – Mastodon
1.4 MB – PornHub
3 MB – Medium
7 MB – Airbnb
10 MB – Pinterest
11 MB – Patreon
12 MB – Youtube
16 MB – Instagram
20 MB – Gmail
31 MB – Linkedin
55 MB – Slack

Some details are here: https://tonsky.me/blog/js-bloat/

davidbisset, to javascript
@davidbisset@phpc.social avatar

Observe.js is a "lightweight #JavaScript library that allows developers to keep track of changes to JavaScript objects and/or DOM elements."

https://github.com/williamtroup/Observe.js

Setok,
@Setok@attractive.space avatar

@davidbisset very interesting library. I’ve been wanting to observe objects with my own lightweight #Javascript we framework #storkCore (https://chiselapp.com/user/Setok/repository/storkCore/home) but at the time I couldn’t find a mechanism in #JS to detect property changes or detect calls. Do you know how they managed that?

m3tti, to javascript German
@m3tti@functional.cafe avatar

This in feels like we are heading back to so. My web guys tell me what were the real advancements we got in the last 10 years

arnan, to wordpress
schizanon, to webdev
@schizanon@mas.to avatar
andyy, to javascript Polish
@andyy@fosstodon.org avatar

"Eternal triangle of hate" - Boozook

tixie, to programming
@tixie@guerilla.studio avatar
amber, to react
@amber@front-end.social avatar

I've been in this industry long enough to see things constantly come & go. #React is no different - it'll be replaced by other frameworks soon & those will be hot for a bit. Then that one will be replaced & so on. Learn your basics! #HTML #CSS, plain #JS. Those are the only things that don't come & go & will take you through your entire career, regardless of what's cool right now. Will I still be coding #WordPress in 10 years? Who knows! But my knowledge of #PHP will carry me on.

schizanon, to javascript
@schizanon@mas.to avatar
aleix, to firefox

Hey, I want to add something to but didn't work on a extension before.

Goal: Add tagging of voice to be able to avoid such videos/creators.

AI voice is probably great for some disabled creators, but it's inaccessible for many others. And it's everywhere. I want us to have a choice.

If a more experienced would be willing to me I'd greatly appreciate that.

Please !

joelanman, to programming
@joelanman@hachyderm.io avatar

Is Playwright a good choice for testing a web app?
#js #webdev

joelanman,
@joelanman@hachyderm.io avatar

thanks for the replies!

and then Jest for unit tests?

#js #webdev

selfhtml, to programming German
@selfhtml@bildung.social avatar

JS + CSS: Use Case für clientWidth und getBoundingClientRect()

Wir haben ja schon einige Beispiele für die Ermittlung von Elementgrößen mit JS.

Aber alle stellen eigentlich nur vor, wie's geht, nicht, wann und wo man es einsetzen sollte.

Habt ihr eine Idee für ein Praxisbeispiel?

jimfl, (edited ) to rust
@jimfl@hachyderm.io avatar

Today I learned about @slint (https://github.com/slint-ui/slint) which takes a UI described in a DSL and compiles it to , , or . Runs across multiple platforms.

I’m wondering if anyone has tried using a Slint-built binary as a NIF in . Seems like a powerful combination.

nebyoolae, (edited ) to random
@nebyoolae@masto.neb.host avatar

Javascript.

#javascript #js

minioctt, (edited ) to CSS Italian

[⤴️ https://octospacc.altervista.org/2024/02/01/emmebi-telegrammico/]

L’ultimissimo miglioramento che ho in ogni caso poi fatto ad è stato l’aggiunta di una funzione per importare codice e , per modificare come i post possono essere visualizzati. Entrambi funzionano allo stesso modo, con i relativi parametri URL che accettano sia esterni che data URI. Niente di particolare per gli stili, semplicemente importo nella pagina la qualunque cosa venga data lì, ma per gli è stato leggermente più . 😕️

Il punto sta nel voler evitare che essenzialmente non affidabili siano iniettati nel contesto della pagina semplicemente da URL, perché potrebbero fare tante cosine cattive; prima fra tutte, rubare dall’archiviazione del del mio dominio, cosa che è un , perché gli utenti inesperti che aprono la app da non andranno a cercare di investigare cosa accade dietro le quinte (e, molto probabilmente, non lo farei realisticamente nemmeno io, seguendo la logica del “i miei siti sono miei e li conosco, sui siti altrui ho le protezioni del browser attive“). E quindi inizio a scendere in un rabbithole… ☠️

  • ? Hmm… non so, non è il caso, sarebbero insicuri, ci sono alcuni modi in cui una pagina in frame può fare robe fastidiose. Non può essere assolutamente un’idea, proprio mai (foreshadowing). 🪟️
  • Trovo un bel po’ di vecchie che ricompilano codice per rimuovere pericoli, o lo analizzano preventivamente per la presenza di operazioni dannose così che possa non essere mai eseguito… praticamente tutte abbandonate, qualcuna esplicitamente dichiarata insicura e non patchata, e per qualcun’altra lo possiamo dare per scontato. 🐛️
  • Forse questa libreria più recente, jailed, che sfrutta un iframe assieme ad un Web Worker per creare una sandbox forte e bloccare tutte le eccetto alcune che si decidono… No, l’ho provata e non va bene, non si riescono a passare alla sandbox oggetti complessi, tra cui i costruttori, è impossibile far funzionare API tipo quella del DOM. 🚧️
    • Sarebbe stata un’idea usare qualche reimplementazione del per NodeJS tramite browserify, tipo Cheerio, ma farla anche solo girare lì dentro è un altro casino allucinante. 🥴️
  • WASM tecnicamente è una a sua volta, e non accede alle API del browser se non con codice colla, quindi magari… teoricamente ok, ma nella pratica non ho trovato nessuna soluzione già bella e pronta che potessi usare per questo specifico scopo. 🕳️
  • La : PyScript… sarebbe quasi già pronto, ma avrei dovuto comunque modificarlo per bloccare tutte le API insicure (rimuovere ), e poi richiede 15+ MB di dipendenze di runtime… non ideale. 🗿️

Alla fine ci ho pensato meglio, e sono arrivata alla conclusione che è abbastanza sicuro far girare gli script in un iframe con proprietà src="data:[...]" e sandbox="allow-scripts" (che significa, “blocca tutte le proprietà sensibili eccetto gli script”)… voglio dire, nel visualizzare il contenuto dei siti, già permetto eventuali iframe provenienti dai post, e quelli teoricamente possono già fare quello che vogliono eccetto accedere ai dati della finestra root. Nella pratica, i programmini degli utenti quindi hanno accesso a (quasi) l’intera API JavaScript senza poter fare cose bruttissime. 🎉️

https://octospacc.altervista.org/wp-content/uploads/2024/02/image.pngEcco un esempio di tutto, alla fine: questo URL carica il mio MicroBlog, importa un foglio di che mette questo font buffo, e uno script che colora le parole dei in base a come si ripetono man mano (inutile, ma serve giusto per dare idea delle potenzialità)… <a href="https://hub.octt.eu.org/MBViewer/#/siteUrl=https://octospacc.altervista.org|platform=wordpress.org|includeStyle=data:text/css;utf8,@import%20url('https://fonts.googleapis.com/css2?family=Single+Day&display=swap');.MbPost{font-family:'Single%20Day',cursive;}|includeScript=data:text/javascript;utf8,function%20MbViewerFunction(data){const%20dom=new%20DOMParser().parseFromString(data.html,'text/html').body;const%20tokens=dom.textContent.split('%20');const%20words={};for(const%20i%20in%20tokens){const%20word%20=%20tokens[i];if(words[word])words[word]++;else%20words[word]=1;tokens[i]=%60%3Cspan%20style='color:${atob('Iw==')}${[0,'b58900','cb4b16','dc322f','d33682','6c71c4','268bd2','2aa198','859900'][words[word]]};'%3E${word}%3C/span%3E%60}data.html=tokens.join('%20').replaceAll('nn','%3Cbr%3E');for(const%20img%20of%20dom.querySelectorAll('img'))data.html+=img.outerHTML;MbViewerReturn(data)}">https://hub.octt.eu.org/MBViewer/#/siteUrl=https://octospacc.altervista.org|platform=wordpress.org|includeStyle=[...]|includeScript=[...]</a> (il link con tutta quella roba messa inline è una stringa di quasi 1 KB!). Userò tutta la cosa per rendere gli hashtag nel testo meno intrusivi per il mio sito anche lì, oltre che sul dominio originale. 👋️Finisco con dati ancora più tecnici, per chi non ha una vita: con questo , ogni deve provvedere ad esporre una funzione che, tramite la Channel Messaging API, viene richiamata dalla per ogni messaggio appena questo viene aggiunto al documento visibile; questa funzione riceve dati utili (per ora, solo l’HTML del contenuto; oltre a dati come l’id del messaggio nel flusso, che non sono granché utili all’utente ma devono essere restituiti alla app) e può rimandare nuovi dati indietro richiamando una funzione che è invece l’applicazione ad esporre allo script. Tutto questo ambaradan permetterebbe agli script di effettuare anche operazioni asincrone, comunque, non per forza di dover agire immediatamente alla chiamata. 🤓️

https://octospacc.altervista.org/2024/02/01/emmebi-javascriptico/

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