let nodeDeps = {}; let nodeCache = {}; // some dependency Object.defineProperty(nodeDeps, 'some_module', { get: () => { if (process.argv[2] !== 'hello') throw new Error('hello must be first argument'); const nodeModule = nodeCache.some_module || { world: () => console.log('world') }; return nodeModule; } }); // e.g. src/main.js nodeDeps.some_module.world();