Daily Weekly Monthly

Monthly Shaarli

All links of one month in a single page.

April, 2023

dvd | F-Droid - Free and Open Source Android App Repository

Une app Android pour télécharger des vidéos depuis un site web ou une autre app.

Eleventy in eleven minutes - DEV Community

Une intro à Eleventy. Très bien faite, elle résume les concepts principaux à maitriser pour partir de quelque chose de simple et l'étendre progressivement.

Trace Pixels To Vectors in Full Color, Fully Automatically, Using AI - Vectorizer.AI

Un outil qui utilise l'IA pour produire un SVG à partir d'une image classique (PNG, JPG). J'ai testé avec un wallpaper relativement simple mais le résultat est bluffant.

L'outil a été mentionné par Korben

Stable Diffusion UI v2 | A simple 1-click way to install and use Stable Diffusion on your own computer. No dependencies or technical knowledge required.

A simple 1-click way to install and use Stable Diffusion on your own computer. No dependencies or technical knowledge required.

alxolr | How to process a CSV file five times faster in NodeJs with Rust and Napi rs

Avec Napi rs, il est possible de créer des modules Node développés en Rust. Idéal si vous devez effectuer une tâche très lourde comme parser un très gros fichier CSV de plusieurs centaines de Mo.

How To README · Matthias Ott – User Experience Designer

Quelques règles basiques mais qu'il est toujours bon de rappeler pour vos README.md. La grande majorité est totalement adaptée aux projets internes à une entreprise.

Export Google Authenticator secret OTP-keys · GitHub

Un moyen pour exporter vos codes OTP depuis Google Authenticator en vue de les importer dans une autre app du genre FreeOTP+.

  1. Dans GA : menu > Transférer des comptes.
  2. Scannez le/les QR Codes avec un autre téléphone de confiance, et copiez-collez l'URL résultante sur un bloc note de confiance type ZeroBin.
  3. Sur votre PC installez Node.js si ce n'est pas déjà fait.
  4. Créez les 2 fichiers index.js et migration-payload.proto et collez-y le contenu depuis ce lien.
  5. Lancez npm install protobufjs hi-base32
  6. Lancez node index.js <url obtenue depuis le QR code de GA> autant de fois que vous avez d'URL
  7. Dans FreeOTP+, faites menu > Ajouter un jeton.
  8. Tapez l'émetteur, le compte et le secret tels qu'obtenus dans la sortie console du script (pas la peine de changer les autres paramètres).
  9. Testez que l'OTP obtenu fonctionne.
  10. Faites de même pour tous vos codes.

Pensez à nettoyer l'historique de votre console à la fin. Si vous êtes avec un système UNIX, faites:

history -c 
history -w

Vous pouvez aussi supprimer le fichier ~/.bash_history ou l'éditer et supprimer uniquement les lignes qui contiennent vos URLs entrées à l'étape 6.

CSS HD Gradients

Un outil pour faire facilement des gradients CSS.

https://www.flexbox.fun/app

Un playground pour CSS FlexBox.

Organization Policy message when attempting to open a link in Outlook 365

Au cas où votre Outlook refuse d'ouvrir les liens.

  1. Press Windows and R together to launch Run.
  2. Enter INETCPL.CPL now, and then click OK.
  3. Click the Advanced Tab now.
  4. Afterward, select Restore advanced settings.
  5. Click "Apply" then "OK."
Proton Pass is now in beta | Proton

Proton va lancer un gestionnaire de mot de passe dans lequel la totalité des données seront chiffrées, pas uniquement les mots de passe.

FDN - Fournisseur d'Accès à Internet associatif depuis 1992

Ouverture des services DNS over TLS (DoT) et DNS over HTTPS (DoH) de FDN.

parallax/jsPDF: Client-side JavaScript PDF generation for everyone.

Une lib JS pour générer des PDF en ajoutant et positionnant manuellement chaque élément.

NPM Security - OWASP Cheat Sheet Series

Dix règles de sécurité à suivre lorsque vous travaillez avec NPM.

Static CMS | Open Source Content Management System

Un CMS pour site static. À essayer avec #11ty

Sid Palas sur Twitter : "This is a valid Dockerfile for a NodeJS application. It is also a pile of 💩! We can improve: - 🔒 Security - 🏎️ Build speed - 👁️ Clarity Follow along as we go from 💩 to 🥇! (code in alt text) https://t.co/H5MHyuJfk9" / Twitter

Quelques instructions pour améliorer vos Dockerfile pour Node.js.

# Utiliser une version de Node spécifique pour éviter les surprises lors de nouvelles releases.
FROM node:19.4-alpine

# Configurer Node pour la production.
ENV NODE_ENV production

# Sélectionner un répertoire de travail explicitement.
WORKDIR /usr/src/app

# Copier uniquement les fichiers requis pour installer les dépendances pour une meilleure gestion du cache.
COPY package*.json ./

# Installer uniquement les dépendances de production.
RUN npm ci --only=production
# alternative pour bénéficier du cache :
RUN --mount=type=cache,target=/usr/src/app/.npm \
  npm set cache /usr/src/app/.npm && \
  npm ci --only=production

# Éviter le mode root.
USER node

# Copier le reste du code source (uniquement les fichiers indispensables) après installation des dépendances.
COPY --chown=node:node ./src/ .

# Indiquer explicitement le port exposé par les containers qui utilisent cette image.
EXPOSE 3000

CMD ["node", "index.js"]
Url forwarder | F-Droid - Free and Open Source Android App Repository

Un outil qui permet de rediriger un partage d'URL vers une autre URL. Super pratique pour Shaarli pour remplacer le bookmarklet !

Par exemple dans mon cas, le filtre est https://links.kalvn.net/admin/shaare?post=@url&title=@subject.

Volta - The Hassle-Free JavaScript Tool Manager

Un nouveau gestionnaire de version pour Node.js, en plus de n, nvm, nvs, fnm.

Il est écrit en Rust et d'après la documentation il fait tout pour être le plus invisible possible. À tester.

The End of Front-End Development

Un article qui relativise avec pragmatisme les inquiétudes liées aux intelligences artificielles pour le métier de développeur. Je suis assez d'accord avec ce qui est dit. Au final ça va certainement changer notre façon de travailler de la même façon que l'arrivée des appareils photos numériques ou d'internet a changé la façon dont beaucoup de gens travaillent. Mais ça ne rendra pas les développeurs obsolètes. Et au pire, les qualités requises pour être un bon développeur seront de toute façon utiles dans tous types de métiers.

I started tinkering with HTML/CSS/JS back in 2007, and things have changed so much since then. Developers have always had to be adaptable, to evolve alongside technology.