typedi
typesafe-dependency-injection-in-typescript-samples | typedi | |
---|---|---|
3 | 7 | |
0 | 3,913 | |
- | 0.4% | |
0.0 | 8.9 | |
about 1 year ago | 3 days ago | |
JavaScript | TypeScript | |
- | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
typesafe-dependency-injection-in-typescript-samples
-
Implementing logger with metadata
I will use the repo as starting point.
-
Step-by-step guide to implementing scoped-like dependencies using AsyncLocalStorage with fastify
Let's say we want to add a new feature to the previous sample app - RequestId.
-
Typesafe, (almost) Zero Cost Dependency Injection in TypeScript
Note: You can find complete source code here.
typedi
-
Cerbos + GraphQL: Do not reinvent user permissions
In this tutorial, we're building a simple application which uses Cerbos inside of a GraphQL server. The server is written in typescript and uses type-graphql to create the schema and resolvers, and TypeDI to handle dependency injection.
-
Typesafe, (almost) Zero Cost Dependency Injection in TypeScript
typedi
-
Has anyone successfully created a Dependency Injection using typescript decorators?
If you don’t want to tie yourself to a full web framework like Nest, there are a few DI-only frameworks that work with decorators, like TypeDI, TSyringe, or Typed Inject.
-
Dependency Injection in JavaScript: Write Testable Code Easily
For existing projects, or if you don't want the weight of an opinionated framework like Nest, libraries like TypeDI and TSyringe can help.
-
Top 5 TypeScript dependency injection containers
The TypeDI project aims for simplicity by leveraging decorators and decorator metadata. It supports dependency scoping with singletons and transient objects and allows for multiple DI containers to exist. You have two options for working with TypeDI:
-
Dependency Injection In JavaScript
There are a number of Javascript dependency injection container libraries out there. Some of my personal favourites are TypeDI and InversifyJS. Here is an example demonstrating basic usage of Typedi with JavaScript.
-
Node Backend Server
- Youtube GIF Maker Using Next.js, Node and RabbitMQ
typedi TypeDI is a powerful dependency injection package that has many features. One of this features is having Singleton Services which is how we use it in our case.
What are some alternatives?
fastify-plugin - Plugin helper for Fastify
InversifyJS - A powerful and lightweight inversion of control container for JavaScript & Node.js apps powered by TypeScript.
dataloader - DataLoader is a generic utility to be used as part of your application's data fetching layer to provide a consistent API over various backends and reduce requests to those backends via batching and caching.
tsyringe - Lightweight dependency injection container for JavaScript/TypeScript
typed-inject - Type safe dependency injection for TypeScript
Nest - A progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications with TypeScript/JavaScript 🚀
injection-js - Dependency injection library for JavaScript and TypeScript in 5.1K. It is an extraction of the Angular's ReflectiveInjector which means that it's well designed, feature complete, fast, reliable and well tested.
jest - Delightful JavaScript Testing.
TypeORM - ORM for TypeScript and JavaScript. Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, SAP Hana, WebSQL databases. Works in NodeJS, Browser, Ionic, Cordova and Electron platforms.
class-validator - Decorator-based property validation for classes.
class-transformer - Decorator-based transformation, serialization, and deserialization between objects and classes.
axios - Promise based HTTP client for the browser and node.js