Un 🇬🇧 article qui explique ce que sont les Promises (promesses) JavaScript en partant de zéro. Une notion indispensable.
Explications et exemples à propos de Promise.withResolvers() qui arrive bientôt dans JavaScript. L'usage est situationel mais ça reste utile à connaître.
De l'amour du format texte brut.
Via https://ploum.net/2024-06-05-complexite-simplicite.html (saine lecture également).
Une alternative open-source au clavier Google d'Android. Le jour où il supporte le swipe je saute direct.
Des ressources liées à l'architecture logicielle.
Une liste des "slash pages" courrantes et communément admises. Il s'agit de pages que vous retrouverez fréquemment sur des sites perso, du genre /about ou /now.
Un correcteur d'orthographe et de grammaire type Grammarly mais qui supporte plusieurs langues et peut même reformuler vos phrases à la manière de DeepL Write.
Un set d'icônes très sympa.
Une explication Interactive détaillée et très didactique des différents types de message queue.
Une alternative à Swagger UI pour documenter vos APIs à partir d'une spécification OpenAPI.
Comment déclencher un téléchargement dans le navigateur purement en local depuis le code JavaScript, en utilisant l'objet Blob.
J'ai vérifié, ça fonctionne même en local en ouvrant simplement un fichier HTML dans votre navigateur, pas besoin de serveur HTTP.
Je me dis que ça peut être très utile par exemple pour partager une espèce de mini application qui pré-calcule un truc et permet de l'exporter en CSV ou JSON. Un calculateur de salaire par exemple, un ou petit outil pour estimer un risque.
Je me copie-colle le snippet en dessous.
const blob = new Blob(
[ /* CSV string content here */ ],
{ type: 'text/csv' }
);
function downloadBlob(blob, filename) {
const url = URL.createObjectURL(blob);
const a = document.createElement('a');
a.href = url;
a.download = filename || 'download';
const clickHandler = () => {
setTimeout(() => {
URL.revokeObjectURL(url);
this.removeEventListener('click', clickHandler);
}, 150);
};
a.addEventListener('click', clickHandler, false);
a.click();
}
downloadBlob(blob, 'result.csv');De la difficulté de centrer des trucs dans d'autres trucs. Délicieux à lire 🤗
Un gestionnaire de ROM qui inclut un multi-émulateur en JavaScript.
Via https://korben.info/gerer-sa-collection-de-roms-de-jeux-retro-avec-romm-le-manager-ultime.html
Un outil pour mettre en valeur un screenshot pour les différents réseaux sociaux.
Via https://korben.info/socialscreenshots-capturer-editer-screenshots-reseaux-sociaux.html
Enfin un 🇬🇧 article clair sur ce que sont les WeakMap en JavaScript et quels sont les cas d'usage.
Elles servent à attacher une valeur à un objet de manière "externe", sans modifier l'objet lui-même. Un peu comme si vous êtes vendeur dans un magasin et attachez l'étiquette avec le prix sur un objet. Si l'objet disparaît, l'étiquette disparaît aussi. Donc si l'objet auquel vous attachez la WeakMap est supprimé par le garbage collector, votre WeakMap l'est aussi.
C'est donc parfait pour attacher une computed property à un objet par exemple, ou pour créer des propriétés réellement privées qui ne seront pas accessible à du code qui n'a pas accès à la WeakMap.
Ce sont des cas bien spécifiques mais c'est intéressant de savoir que ça existe.
Comprendre ce qu'est un virtual DOM en en créant un de zéro. C'est très intéressant et très malin.
Les premières impressions d'un développeur JavaScript qui découvre Go. Ça donne envie de s'y essayer 👀
Une initiation à Playwright, un outil de testing visuel pour le web.
Des exemples d'usage du module crypto de Node.