UNPKG

ts-ioc-container

Version:

Fast, lightweight TypeScript dependency injection container with a clean API, scoped lifecycles, decorators, tokens, hooks, lazy injection, customizable providers, and no global container objects.

138 lines (137 loc) 4.44 kB
{ "name": "ts-ioc-container", "version": "55.2.0", "description": "Fast, lightweight TypeScript dependency injection container with a clean API, scoped lifecycles, decorators, tokens, hooks, lazy injection, customizable providers, and no global container objects.", "workspaces": [ "docs" ], "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org/" }, "author": "ibabkin <igba14@gmail.com>", "homepage": "https://igorbabkin.github.io/ts-ioc-container", "license": "ISC", "sideEffects": false, "main": "cjm/index.js", "types": "typings/index.d.ts", "module": "esm/index.js", "keywords": [ "dependency-injection", "inversion-of-control", "container", "typescript", "typescript-di", "typescript-ioc", "dependency-injection-container", "ioc", "di", "ioc-container", "tsyringe-alternative", "inversify-alternative", "awilix-alternative", "clean-api", "no-global-container", "scope", "scoped-dependencies", "hook", "lifecycle-hooks", "decorators", "lazy-injection", "service-container", "inject" ], "directories": { "lib": "lib", "test": "__tests__" }, "files": [ "cjm/**/*", "esm/**/*", "typings/**/*" ], "repository": { "type": "git", "url": "git+https://github.com/IgorBabkin/ts-ioc-container" }, "scripts": { "build:cjm": "rimraf cjm && tsc -p tsconfig.production.json --outDir cjm --module CommonJS", "build:esm": "rimraf esm && tsc -p tsconfig.production.json --outDir esm", "build:types": "rimraf typings && tsc -p tsconfig.production.json --outDir typings --emitDeclarationOnly --declaration", "generate:docs": "scripts/generate-readme/generate-readme.ts && git add README.md", "build": "npm run build:cjm && npm run build:esm && npm run build:types", "test": "vitest run", "test:spec": "vitest run __tests__/specs", "bench:spec": "vitest bench __benchmarks__/specs/*.bench.ts", "test:coverage": "vitest run --coverage --coverage.reporter=lcov", "type-check": "tsc --noEmit", "type-check:watch": "tsc --noEmit --watch", "commit": "cz", "format": "prettier --write \"**/*.ts\"", "lint": "eslint lib/**/*.ts __tests__/**/*.ts __benchmarks__/**/*.ts scripts/**/*.ts", "lint:fix": "npm run lint --fix", "audit": "npm audit", "prepare": "husky", "release": "npm run build && npm test && npm publish", "docs:dev": "pnpm --filter ts-ioc-container-docs run dev", "docs:serve": "pnpm --filter ts-ioc-container-docs run dev", "docs:build": "pnpm --filter ts-ioc-container-docs run build", "docs:preview": "pnpm --filter ts-ioc-container-docs run preview" }, "devDependencies": { "@commitlint/cli": "^20.2.0", "@commitlint/config-conventional": "^20.2.0", "@eslint/eslintrc": "^3.3.5", "@eslint/js": "^9.24.0", "@semantic-release/changelog": "^6.0.3", "@semantic-release/git": "^10.0.1", "@semantic-release/github": "^12.0.2", "@semantic-release/npm": "^13.1.2", "@swc/core": "^1.15.24", "@types/node": "^25.5.2", "@typescript-eslint/eslint-plugin": "8.32.1", "@typescript-eslint/parser": "8.58.2", "@vitest/coverage-v8": "^4.1.2", "cz-conventional-changelog": "^3.3.0", "eslint": "9.24.0", "eslint-config-prettier": "10.1.8", "eslint-plugin-prettier": "5.2.6", "handlebars": "^4.7.8", "husky": "^9.1.7", "lint-staged": "^16.4.0", "moq.ts": "^10.0.8", "prettier": "3.5.3", "prettier-plugin-astro": "^0.14.1", "reflect-metadata": "^0.2.2", "rimraf": "6.1.3", "semantic-release": "^25.0.2", "tsx": "^4.21.0", "tsyringe": "^4.10.0", "typescript": "5.8.3", "unplugin-swc": "^1.5.9", "vite": "^6.4.1", "vitest": "^4.1.2" }, "lint-staged": { "*.{js,ts,tsx}": [ "eslint --fix", "prettier --write" ], "docs/**/*.{js,ts,tsx,mjs,astro}": [ "prettier --write" ], "docs/**/*.astro": [ "eslint --fix" ] }, "gitHead": "ae10f302c7e0f55196b42669040735112479a854", "config": { "commitizen": { "path": "./node_modules/cz-conventional-changelog" } }, "packageManager": "pnpm@10.20.0+sha512.cf9998222162dd85864d0a8102e7892e7ba4ceadebbf5a31f9c2fce48dfce317a9c53b9f6464d1ef9042cba2e02ae02a9f7c143a2b438cd93c91840f0192b9dd", "engines": { "node": ">= 22.14.0" } }