DOT: The Depend-o-tron
Source: https://github.com/mscharley/dot
Author: Matthew Scharley
Contributors: See contributors on GitHub
Bugs/Support: Github Issues
License: MIT license
Status: Active
Synopsis
A small, well-tested IOC framework for TypeScript and JavaScript with a focus on type safety and forward compatibility.
Support for TC39 standard decorators for use with both TypeScript and JavaScript as well as TypeScript's experimental decorators for projects who still use them.
Read more about our goals here.
Installation
npm i --save @mscharley/dot
This library should work out of the box with any TypeScript configuration if you are using TypeScript 5.0 or later. Read below for other versions.
TypeScript support
This library is designed to work with either setting of the experimentalDecorators
option in TypeScript 5.x or later. In TypeScript 4.x and earlier, you will need to enable experimental decorators as that is the only option for decorator support. In either case, the emitDecoratorMetadata
is not required, and is not used for any functionality if enabled.
JavaScript support
JavaScript should work out of the box with any JavaScript transpiler that supports TC39 decorators. For now you will need a transpiler until the standard gets implemented more widely.
Known implementations:
Usage
For usage examples, please see the documentation.
Inspiration
The API design of this project is heavily inspired by InversifyJS.