#JavaScript

Laisser un commentaire

Rollup, l'outil pour les bundler tous !

Rollup est un bundler JavaScript. C’est à dire qu’il lit votre code et bundle l’ensemble des modules importés (via import ou require) en un fichier unique. Il est capable d’exporter ce module dans les principaux formats de modules (CJS, ESM, AMD, IIFE) correspondant à tous les cas d’usage. En outre, via quelques plugins bien utiles, il se chargera aussi de transpiler et de minifier le code. Que demande le peuple ?

Laisser un commentaire

npm for everything™

npm était à l’origine le package manager pour Node.js. Cependant, son rôle s’est aujourd’hui élargit pour devenir le package manager du JavaScript tout court. Aussi bien en front qu’en back, de plus en plus de modules et bibliothèques utilisent aujourd’hui npm. On en fait même un task manager grâce aux scripts qu’il permet d’exécuter. Cela permet d’avoir un seul outil pour l’ensemble de nos process.

Laisser un commentaire

Compresser les images dans le navigateur

Uploader une image de profil, vous avez sûrement déjà vécu cette situation. Cette petite image qui ne fera au mieux que 250px * 250px. Mettez vous dans la peau de mamie du cantal, est-ce que vous croyez qu’elle va redimensionner son image avant upload ? Notre utilisateur qui balance une image de 8000px x 6000px va devoir patienter un bon moment le temps d’envoyer tout ça avant que, enfin, le serveur optimise cette dernière.

Mais pourquoi ne pas faire tout ça directement dans le navigateur ?! On y gagne en tous points. L’utilisateur ne perd pas son temps à uploader xMb pour rien, vous économisez de la puissance et de la bande passante serveur et vous œuvrez pour la planète ! 5 bonnes raisons de faire ça dans le browser. On y va ?

Laisser un commentaire

Javascript asynchrone, les Promises à la rescousse

Tout est dans le titre. L’ES6 a apporté beaucoup de nouveautés, entre hype et réelle utilité, beaucoup d’encre a coulée. Les Promises ont été à l’honneur car elles sont un ajout notable au langage et pemettraient, apparemment, de nous affranchir du callback hell. Voyons dans cet article comment les utiliser pour une meilleure gestion du flux.

Laisser un commentaire

Télécharger des fichiers depuis le web en Node.js

Quelle que soit l’application sur laquelle on travaille, il arrive forcement un moment ou cette dernière doit automatiquement télécharger des ressources web. Des images de profil téléchargées depuis Gravatar ou Twitter par exemple. Voyons comment créer rapidement une fonction de téléchargement.

Laisser un commentaire

Programmation orientée objet en JavaScript

JavaScript est un des langages les plus utilisés et aussi un des plus populaires du moment. Côté client, côté serveur, il est omniprésent sur le web. Malgré cela, le JS demeure mal compris par un grand nombre de développeurs. Pourtant, à mesure que son usage s’intensifie et qu’il est le cœur d’applications de plus en plus complexes, il convient de bien appréhender son modèle objet. En route pour le royaume des objets !

Laisser un commentaire

Commandes essentielles de MongoDB

Lorsque, comme beaucoup, on vient du monde des bases de données relationnelles et de la syntaxe SQL, l’apprentissage et l’usage du noSQL est au début un peu déroutant. Voici donc un bref aperçu des notions propres à MongoDB suivi d’un condensé des commandes les plus couramment utilisées (et utiles) dans MongoDB.

Laisser un commentaire

XHR cross domain avec Node.js

Les requêtes ajax entre domaines, ou XHR cross domain pour les intimes, permettent d’envoyer des requêtes JavaScript depuis une url A vers une url B. C’est par exemple ce que fait le script de Google Analytics. Il envoie des requêtes d’une url A (votre site) vers une url B (les serveurs de Google). De manière générale, cela sert par exemple pour faire des requêtes d’api. Pour d’évidentes raisons de sécurité, le CORS n’est pas activé par défaut. Voyons comment le paramétrer pour NodeJs.

Laisser un commentaire

Réaliser un panier 100% JavaScript

Une boutique de e-commerce nécessite la plupart du temps un panier. De nombreuses solutions peuvent répondre à ce besoin. Il est possible de mettre en place un panier côté serveur, d’adjoindre un plugin au framwork ou CMS utilisé pour le site etc. Cependant, nous allons voir comment programmer un panier 100% en JavaScript sans utiliser aucun plugin ni code côté serveur.

Laisser un commentaire

Backbone.js : recherche fulltext dans les collections

La plupart du temps, lorsque l’on effectue une recherche sur un site web, on envoie une requête au serveur – laquelle est directement adressée à la base de données – puis le serveur nous renvoie la réponse de cette recherche.

Cependant, avec les applications web, on possède souvent notre jeux de données sur le client (le navigateur), et une bonne partie de la navigation et des actions que l’on peut effectuer sont gérées directement au sein du navigateur en JavaScript. Backbone nous donne justement une structure et des outils pour construire de telles applications. Ainsi, puisque l’on dispose déjà des données dans le navigateur, il est logique d’effectuer notre recherche dans celui-ci plutôt que de le sous-traiter au serveur, avec comme inconvénient les temps de latence que l’on connait. Voyons comment effectuer une recherche directement dans nos collections Backbone.js