Sign in

Romain Lanz

@romainlanz.com
905 followers 339 following 337 posts

Developer at FIVB.com @adonisjs.com core member 🔗 romainlanz.com 🔗 boring-money.app ✉️ hello@romainlanz.com

PostsRepliesMedia
Romain Lanz @romainlanz.com · 23/05/2026
Au vu des dernières supply-chain attaques, il y a une dernière étape que vous pouvez ajouter si vous êtes dans l'écosystème JS, Python ou Rust (en plus de tout ce que j'ai déjà cité dernièrement). Mettre un firewall devant votre package manager 🔐 socket.dev/blog/introdu...
120
Romain Lanz @romainlanz.com · 22/04/2026
OpenAI vient de release un nouveau modèle open-weight pour la privacy 👀 Un petit modèle (1.5B) capable de détecter et masquer automatiquement les données sensibles (emails, noms, API keys…) directement dans du texte, et même en local github.com/openai/priva...
130
Romain Lanz @romainlanz.com · 11/04/2026
We just added dedicated guides for France in Boring Money 🇫🇷 After Switzerland, we're expanding with country-specific content to help you make better financial decisions.
010
Romain Lanz @romainlanz.com · 14/03/2026
I love reading posts like this on Reddit. To answer the question… yes, we do. That's exactly why we built @adonisjs.com 10 years ago. So you stop rewriting the same things and stitching together 30 different libraries.
Reddit post with title: "Do you also end up rewriting the same error handling in every Node.js project?"
021
Romain Lanz @romainlanz.com · 03/02/2026
"We need more batteries-included backend frameworks like Rails, Laravel or Django." That's literally what AdonisJS has been doing for years.
Comments asking for a batteries included frameworks like RoR, Django or Laravel
051
Romain Lanz @romainlanz.com · 03/02/2026
State of JS Survey is out. Interesting to see that many backend framework pain points people mention are things already addressed by @adonisjs.com. If you haven't tried it yet, now might be a good time 👀
Back-end Frameworks Pain Points as per State of JS Survey. Main one are Static typing, Browser support and Performance
171
Romain Lanz @romainlanz.com · 31/01/2026
Sneak peek of what's coming next in BoringMoney 👀 An AI agent that understands you and helps you manage your budget: "I want a new laptop, it costs 3000. can you create a goal?" More soon.
IA Assistant proposing to create a new goal for my new laptop
021
Romain Lanz @romainlanz.com · 31/01/2026
BoringMoney is officially moving to Open Beta 🎉 What's new: - Privacy mode for demos & screen sharing - New dashboard charts (categories & month-over-month) - Broker transfers tracking - Daily / weekly / monthly time scale 👉 Registration is now open to everyone boring-money.app
Changelog of boring-money foundable at https://boring-money.app/changelog
021
Romain Lanz @romainlanz.com · 19/01/2026
Il est très possible qu'au prochain stream, un Wordle apparaisse sur l’écran d'attente… et peut-être d'autres mini-jeux 👀🤪
Le jeu wordle
010
Romain Lanz @romainlanz.com · 15/01/2026
boringnode/queue v0.3.0 is out! 🚀 This release adds bulk dispatch with dispatchMany(), job grouping, and full job retention/status tracking. ⚠️ Breaking: New storage layout for Redis & Knex adapters requires migration.
110
Romain Lanz @romainlanz.com · 06/01/2026
Team management is here! 🎉 You can now invite your partner to share your Boring Money account. The foundations are set. Next up: payment system to exit beta and open the doors to everyone. ✌️
Latest changelog of Boring Money showing the new feature to add team member.
131
Romain Lanz @romainlanz.com · 03/01/2026
boringnode/queue v0.2.0 is out! 🚀 This release reworks the Job architecture to be DI-first. The constructor is now fully reserved for your dependencies, payload and context are handled internally. Job naming also defaults to the class name now.
class ResizeImageJob extends Job<ResizeImagePayload> {
  constructor(private storage: StorageService) {
    super()
  }

  async execute() {
    const image = await this.storage.get(this.payload.path)
    const resized = await image.resize(this.payload.width)
    await this.storage.put(this.payload.outputPath, resized)
  }
}
130
Romain Lanz @romainlanz.com · 02/01/2026
We're officially out of alpha with the queue package! This release introduces Persistent Job Scheduling, Job Context with attempt tracking, dependency injection support, graceful shutdown, and a custom logger option.
// Cron-based
await ReportJob.schedule({ type: 'sales' })
  .cron('0 9 * * MON')
  .timezone('Europe/Paris')
  .run()

// Interval-based
await MetricsJob.schedule({ endpoint: '/api/health' })
  .every('30s')
  .run()
110
Romain Lanz @romainlanz.com · 29/12/2025
Fresh features just landed in Boring Money! - Balance reconciliation to adjust liquid assets when they drift from reality - Month navigation on dashboard - Filter expenses & incomes by month, category, search - Pagination & skeleton loading states Beta codes in the follow-up 👇
Changelog showing 3 releases dated December 29, 2025. Version v20251229.3 adds balance reconciliation for liquid assets. Version v20251229.2 adds month navigation on dashboard. Version v20251229.1 adds filtering for expenses and incomes by month, category, and search text, pagination for lists, and skeleton loading states.
220
Romain Lanz @romainlanz.com · 10/12/2025
One of many testimonials from developers trying AdonisJS for the first time. Will you be next?
Discord Message with: "Adonis.js is probably the best full stack framework I worked with! 

I’m just now starting to switch over from express."
020
Romain Lanz @romainlanz.com · 08/12/2025
A new alpha of the queue package is now available. This one brings a JobPool system for proper concurrency and worker timeouts. Redis now uses atomic Lua scripts for better performance. Also added a Knex adapter for SQL database support and smarter connection handling.
Benchmark results: @boringnode/queue vs BullMQ. Tests run with 100, 500, and 1000 jobs at concurrency 1, 5, and 10. Results show @boringnode/queue is up to 13.9% faster in most scenarios.
160
Romain Lanz @romainlanz.com · 01/12/2025
The first alpha of the new queue package is finally available. This early release focuses on collecting feedback about the API design before moving further. If you want to try it out and share your thoughts, now is the perfect time. ➡️ github.com/boringnode/q...
Code sample for the queue package, available on the GitHub
160
Romain Lanz @romainlanz.com · 21/11/2025
"Can AdonisJS be deployed on AWS lambda?" Yes, you can deploy @adonisjs.com on AWS Lambda, but just because you can doesn't necessarily mean you should. 🔗 www.reddit.com/r/node/comme... 👇


Yes, you can deploy AdonisJS on AWS Lambda, but just because you can doesn't necessarily mean you should.

AWS Lambda is a Function-as-a-Service (FaaS) platform designed for short-lived, stateless functions, not for long-running web servers. AdonisJS, like most full-stack frameworks, is meant to run as a persistent HTTP process, so you'd often be fighting against Lambda cold starts, timeouts, and stateless nature.

Otherwise, AdonisJS can be hosted anywhere Node.js runs: VPS, Docker, Kubernetes, Fly.io, Railway, Render, etc.
061
Romain Lanz @romainlanz.com · 09/09/2025
Je suis désormais Partner avec @proton.me ! 🔐 Pour celles et ceux qui ne connaissent pas, Proton est une entreprise suisse engagée pour la protection de la vie privée en ligne. Vous pouvez retrouver sur mon Discord des liens pour tester leurs services avec un rabais 📌 discord.gg/hcFa6Za6z8
page d'accueil de Proton Corp
120
Romain Lanz @romainlanz.com · 01/09/2025
"Hello mate, can you describe your views on why one should pick AdonisJS over NestJS?" Sure did 👇 www.reddit.com/r/node/comme...
Reddit message from the link shared above that compares AdonisJS and NestJS
051
Romain Lanz @romainlanz.com · 26/08/2025
🎥 On reprend les lives ce soir à 20h30 ! Au programme : débrief du Pixel+Code, retour de vacances, et du fun sur PEAK avec les copains streamers devs.
000
Romain Lanz @romainlanz.com · 10/08/2025
15 000 balles pour EnAvantToutes !!!!! C'était INSANE ! Merci à tous et à toutes pour ce weekend de folie !!!! 🫶🫶🫶🫶 Katy_v4, HorkaTV, Upd4ting, Deafmute, KysterMax, @bekaone.bsky.social, VisualMitch, @trao.re, LesMoulinsDuDev Merci aux invités et invitées qui sont venus !
Participants du Pixel+Code 2025
050
Romain Lanz @romainlanz.com · 10/08/2025
Les 7000 étant passé, on a du dessiner un.e streamereuse sur GIMP du Pixel+Code, c'est Katy_V4 qui a remporté le sondage !
020
Romain Lanz @romainlanz.com · 10/08/2025
030
Romain Lanz @romainlanz.com · 10/08/2025
Bon...
110
Romain Lanz @romainlanz.com · 10/08/2025
Bon, on vient de vibe-code une todolist et une app complète de quiz. On va review le code maintenant. twitch.tv/romainlanz
120
Romain Lanz @romainlanz.com · 10/08/2025
On a passé les 5000 balles hier soir et on continue tout bientôt ! 🥰
010
Romain Lanz @romainlanz.com · 08/08/2025
ON EST EN LIVE POUR LE @LePixelCode !!! Il s’agit d’un événement caritatif au profit de l’association En avant toutes, qui agit pour l’égalité des genres et lutte contre les violences sexistes et sexuelles. twitch.tv/romainlanz
020
Romain Lanz @romainlanz.com · 06/08/2025
Mes donation goals pour Pixel+Code sont prêts ! 👇 Entre roast de codebase, accents douteux, projets absurdes et sessions fullbody avec deafmute, y'a de quoi s'amuser. C'est pour la bonne cause, alors j'espère que vous serez là du 8 au 10 août 🙌
Carte de participation à l'événement Pixel+Code pour Romain Lanz, avec sa photo et une liste de donation goals.

1000€ - Forcer Julien à streamer
2000€ - Parler avec l’accent suisse pendant 1h
3000€ - Session sport IRL avec Deafmute
4000€ - Roast de codebases
5000€ - Créer un bot qui embête les autres streamers
6000€ - Vibecoder 1h sur un vrai projet
7000€ - Dessiner un·e streamer·euse sur Paint
8000€ - Projet cuisine IA avec Deafmute
9000€ - Tester NestJS en live
10000€ - Participer au hackathon de Deafmute
15000€ - Offrir des abonnements Frontend Masters
040
Romain Lanz @romainlanz.com · 16/07/2025
✨ Dans moins d'un mois, c'est Pixel+Code ! Un événement caritatif au profit de l'association "En avant toutes", qui lutte pour l'égalité des genres et contre les violences sexistes et sexuelles. Pour en savoir plus et découvrir qui sera présent·e : lepixelcode.fr
Affiche de Pixel+Code annonçant les dates du 08.08.2025 au 10.08.2025
032
Romain Lanz @romainlanz.com · 22/06/2025
🎥 Live ce soir vers 19h30-20h ! On avance sur les overlays pour Pixel+Code. www.lepixelcode.fr
Affiche du Pixel+Code annoncé du 08/08 au 10/08
130
Romain Lanz @romainlanz.com · 18/05/2025
🔴 En live sur Twitch ! On discute un peu, puis on reprend le code de mon site. Passe faire un tour 👇 twitch.tv/romainlanz
010
Romain Lanz @romainlanz.com · 08/05/2025
"How long will adonisjs exist?" github.com/orgs/adonisj...
Hey @SI-IC! 👋🏻

AdonisJS has been around since 2015, longer than many frameworks currently active in the Node.js ecosystem. From the beginning, our goal has been to help developers write better software in Node.js. That goal doesn't require us to chase popularity or compete with other frameworks. We're not here to fight, we're here to build something stable, fast, and pleasant to use.

Why would AdonisJS stop in the next 2–3 years? Quite the opposite is happening. Just a year ago, we released a major update embracing ESM to stay aligned with the direction of the Node.js ecosystem. We're also actively refactoring Lucid, our ORM, to make it more powerful and developer-friendly. The level of care and long-term thinking behind AdonisJS is rare.

Since you mentioned NestJS: despite its popularity, Nest has yet to adopt ESM and still relies on non-standard decorators. As the ecosystem shifts toward spec-compliance, that could become a bigger issue. From a long-term perspective, frameworks that don't evolve with the platform may be more at risk than those that do.

We're here for the long haul, not because we aim to dominate, but because we believe in building excellent tools that we love to use ourselves.
1152
Romain Lanz @romainlanz.com · 06/05/2025
Pas de nouvel article en avril, mais vous avez quand même été nombreux à passer sur le site ! Les articles les plus consultés : celui sur le déploiement d’une app Node.js et le write-up du CTF Insomni’hack 2025. Merci à tous pour vos lectures, partages et passages curieux 👀
Statistiques du site web pour avril 2025 : 633 visiteurs uniques, 1.3k pages vues, durée moyenne de visite de 1 minute 23. Les sources principales sont l’accès direct, Google et Twitter. Les articles les plus lus concernent le déploiement d’une application Node.js et le write-up du CTF Insomni’hack.
020
Romain Lanz @romainlanz.com · 03/05/2025
Certains l'auront peut-être remarqué, la publication des VODs a repris sur YouTube ! 📺 Nouvelle vidéo : "Créer un Boilerplate AdonisJS + InertiaJS Open Source" ▶️ youtu.be/fSa4f2PZQyo
050
Romain Lanz @romainlanz.com · 01/05/2025
Node.js 18 est arrivé en fin de vie ! 🚨 Il est temps de migrer vers Node.js 22 (LTS) ou Node.js 24 pour rester à jour et sécurisé. 🔗 nodejs.org/en/about/pre...
Schéma du cycle de vie des versions de Node.js entre octobre 2024 et octobre 2026.
Node.js 18 est en maintenance jusqu’en avril 2025.
Node.js 20 est en maintenance jusqu’en avril 2026.
Node.js 22 est actuellement en phase active et passera en maintenance en octobre 2025.
Node.js 23 est une version courante de courte durée entre octobre 2024 et avril 2025.
Node.js 24 devient la version courante à partir d’avril 2025 et entre en phase active en octobre 2025.
La branche “main” est marquée comme “UNSTABLE” tout au long de la période.
1101
Romain Lanz @romainlanz.com · 13/04/2025
Ça vous dit un stream today ? (si je me souviens comment ça fonctionne 😅) Avec @julr.dev, on vous cook un tool de déploiement aux petits oignons, faut que je vous montre ça 🥸
Illustration cartoon d’un développeur portant une toque de chef et des lunettes, en train de "cuisiner" un outil de déploiement. Il remue une grande marmite remplie de tags flottants comme "docker", "traefik", "ssh" et "git". À ses côtés, une assiette de pâtes et un hamburger évoquent la métaphore culinaire. L’ambiance est chaleureuse, avec des tons orangés.
381
Romain Lanz @romainlanz.com · 15/03/2025
Time to go sleep now.... 🫡
A CTF challenge scoreboard showing multiple challenge names and their solve counts in a grid format. The challenges that have been solved are highlighted in green.
020
Romain Lanz @romainlanz.com · 14/03/2025
Shots fired at Okta for their hack with this bcrypt challenge 🤣
CLI command showing the flag needed to validate the CTF challenge
110
Romain Lanz @romainlanz.com · 14/03/2025
My outie should be proud of me
Severance software
160
Romain Lanz @romainlanz.com · 14/03/2025
Time to do some hacking at Insomni’hack!
160
Romain Lanz @romainlanz.com · 05/03/2025
Every time someone says "AdonisJS looks amazing, but I’ll wait until it’s more popular"… I feel this meme deep in my soul. AdonisJS is stable, production-ready, and fully aligned with modern JS practices (like ESM). What are you waiting for?
A circular meme illustrating the "popularity paradox" around AdonisJS, a Node.js framework. In the center is the AdonisJS logo, with the word "adonis" next to it. Surrounding the logo, four arrows form a continuous loop, each containing a phrase:

1. "AdonisJS is amazing! Why isn’t it more popular?"
2. "Only a handful of people use it..."
3. "I only want to use what’s trending..."
4. "I’ll wait until it gets more popular..."

The meme humorously highlights how developers' fear of using "less popular" tools prevents those tools from ever becoming popular.
4181
Romain Lanz @romainlanz.com · 23/01/2025
Nearly a year since the issue was opened, the @typescriptlang.org team still hasn't provided a clear path to migrate from legacy to ESM decorators. It doesn't look all that complicated, but they seem to have little interest in addressing it. Please upvote. ▶️ github.com/microsoft/Ty...
My message on the issue asking for any updates.
020
Romain Lanz @romainlanz.com · 22/12/2024
On prépare un nouvel article pour mon blog… Vous avez une idée du sujet ? 👀
Schéma illustrant un client qui ouvre une connexion vers un serveur, tandis que le serveur envoie des événements via cette même connexion
281
Romain Lanz @romainlanz.com · 14/12/2024
Si vous voulez en savoir plus sur InertiaJS 2.0, sorti hier, n'hésitez pas à regarder le WeTalk #11 présenté à la communauté francophone du JavaScript ! ▶️ youtu.be/Tb9KcNyoLm4
Application de démonstration montrant comment un envoi de formulaire fonctionne
0224
Romain Lanz @romainlanz.com · 08/12/2024
Demain à 20h00, retrouvez-nous sur le Discord de la communauté francophone du JavaScript pour découvrir InertiaJS ! L'objectif est que vous compreniez ce qu'est InertiaJS, la problématique qu'il résout et à quoi cela ressemble. ➡️ discord.gg/5hkNGFkU?eve...
première diapo de la présentation
291
Romain Lanz @romainlanz.com · 06/12/2024
Le shop de Keycapsule est ouvert, la capsule Video Color est enfin dispo avec ses keycaps rétro !❤️ Attention, elle est limitée à 200 exemplaires ! Découvre tous les détails, le prix et commande ta capsule dès maintenant sur notre site : keycapsule.shop
image du set Keycapsule "Video Color"
291
Romain Lanz @romainlanz.com · 06/12/2024
Le lancement de Keycapsule, c'est ce soir à 19h ! Il n'y a que 200 sets disponibles, alors foncez si vous en voulez un. Pour l'occasion, on sera en stream dès 18h30 pour vivre ça en direct. 🛒 keycapsule.shop 📺 www.twitch.tv/willtraore
170
Romain Lanz @romainlanz.com · 02/12/2024
For anyone who wants to see the entire set!
The Keycapsule set showing a full support for Qwerty US and Azerty PC
011
Romain Lanz @romainlanz.com · 02/12/2024
I haven’t mentioned it here yet, but this Friday we’re launching our very first capsule at Keycapsule! 🎉 Unique, passionately designed keycaps in limited editions. Perfect as a Christmas gift—or to treat yourself! Retro-inspired and compatible with AZERTY PC & QWERTY US layouts. 🔗 keycapsule.shop
Keycapsule first set showing a beautiful keyboard in the middle of retro objectThree keyboard showing the first Keycapsule setClose-up look of the Keycapsule first setKeycapsule first set on a dark keyboard
4335