A powerful and lightweight inversion of control container for JavaScript and Node.js apps powered by TypeScript.
inversify.io
inversify/InversifyJS