Le moment tech mai 2020

Dans le cadre de leur veille, les devs d'Anybox mettent en lumière des librairies et autres outils python, mais pas que.

Voici leurs propositions pour ce mois de mai.

Outils

3mux is a terminal multiplexer with out-of-the-box support for search, mouse-controlled scrollback, and i3-like keybindings. Imagine tmux with a smaller learning curve and more sane defaults. #terminal
3mux en action
jq , une application légère en ligne de commande pour analyser du JSON  - Plus besoin de sed, awk et grep pour extraire vos données. #json

Bonnes pratiques

Commits Conventionnels, la spécification de Conventional Commits est une convention légère pour des messages de commit propre. Il fournit un ensemble simple de règles pour créer un historique de commit explicite; Ce qui facilite l’écriture d’outils automatisés. Cette convention est liée à SemVer, en décrivant les fonctionnalités, les correctifs et les modifications importantes apportées aux messages de commit. #git

Docker

Bottlerocket is a free and open-source Linux-based #OS meant for hosting #containers. Bottlerocket is currently in a developer preview phase and we’re looking for your feedback. Bottlerocket focuses on security and maintainability, providing a reliable, consistent, and safe platform for container-based workloads. This is a reflection of what we've learned building operating systems and services at Amazon. You can read more about what drives us in our charter.
Chérie, j'ai rétréci Docker ,un billet en 3 parties qui compare (et explique) différentes techniques  pour optimiser la taille des conteneurs (Alpine, Scratch, Nix,  multi-stage) en prenant en compte les spécificités des langages de ce  qu'on veut déployer. #docker

Bases de données

postgresql-anonymizer, is an #extension to mask or replace personally identifiable information (#PII) or commercially sensitive data from a #PostgreSQL database.

Librairies

Nebulo is a #python library for building #GraphQL #APIs on top of #PostgreSQL. It has a command line interface for reflecting databases wtih 0 code, and can also be added to existing #SQLAlchemy projects.
Axios has a great API that developers love. Redaxios provides that API in 800 bytes, using native fetch(). For those searching for ways to shave a few kilobytes off of their bundles, that's less than 1/5th of the size. This is made possible by using the browser's native Fetch API, which is supported in all modern browsers and polyfilled by most tools including Next.js, Create React App and Preact CLI. #javascript
Testing Library, You want to write maintainable tests for your Web UI. As a part of this goal, you want your tests to avoid including implementation details of your components and rather focus on making your tests give you the confidence for which they are intended. As part of this, you want your testbase to be maintainable in the long run so refactors of your components (changes to implementation but not functionality) don't break your tests and slow you and your team down. #tests #javascript #vuejs
Uvloop: Blazing fast Python networking. A full, drop-in replacement for the asyncio event loop. Uvloop is written in Cython and built on top of libuv. Uvloop makes asyncio fast. In fact, it is at least 2x faster than nodejs, gevent, as well as any other Python asynchronous  framework. The performance of uvloop-based asyncio is close to that of  Go programs. #asyncio
vuex orm, permet de définir des modèles javascript pour représenter les données qui seront stockés dans le store vuex. Il y a  des concepts intéressants, et des plugins pour récupérer facilement la donnée d'un serveur (RestAPI ou GraphQL)  dans le store vuex, ainsi que des plugins qui ajoute des flags du type isDirty et isNew #vuejs #javascript

Pour retrouver nos moments techs, c'est par ici