The Node Module Diaries: Large App Architecture from the Trenches
summary
A large rewrite moves Appium to ES2015, replaces nested callbacks with async/await, and creates a teen_process wrapper around node child_process called teen_process that cuts subprocess boilerplate about 50%. The codebase explodes into roughly 45 modules, which improves separation and tests but causes painful repo, dependency and CI overhead (npm install delays of 3–4 minutes, tricky cross-version instanceof bugs), so many modules get consolidated back into a simpler monorepo layout.
AI-written summary · about
chapters (12)
- 0:00Start
- 8:02PROBLEMS
- 11:53MODULARITY?
- 13:15CALLBACKS?
- 14:17SUBPROCESS MANAGEMENT?
- 17:44CALLBACKS - ASYNC/AWAIT
- 19:05MODULARITY / SEPARATION
- 23:08MICROMODULES!!1
- 28:45DRAWBACKS CONT...
- 36:25MICROSERVICES / SOA
- 39:05MICROREPOS
- 39:56MICRO OR MONO
related talks
27mRethinking Appium’s Code Base
39mThe Structure of Node.JS Applications
46mMonolith Decomposition in Node.js — A Case Study
02h 24mHow to Node.js - Part 2
35mThe Art of Building Node.js Projects at Scale
30mShipping Node.js packages in 2025
40mNode.js: Where are we now, where are we going?
33mPanel: The State of Node.js
