{
  "name": "@venizia/ignis-boot",
  "version": "0.1.1",
  "description": "Convention-based auto-discovery and bootstrapping system for TypeScript applications. Three-phase lifecycle (configure, discover, load) using glob-based file matching and Template Method pattern. Auto-registers controllers, services, repositories, and datasources into the IoC container by file naming conventions. Inspired by LoopBack 4 boot system. Extensible via custom booters for any artifact type.",
  "keywords": [
    "artifact-discovery",
    "artifact-loading",
    "auto-discovery",
    "auto-loading",
    "boot",
    "booter",
    "bootstrap",
    "bootstrapper",
    "bootstrapping",
    "bun",
    "controller-loading",
    "convention-based",
    "convention-over-configuration",
    "dependency-injection",
    "design-patterns",
    "di",
    "extensible",
    "file-discovery",
    "glob",
    "glob-pattern",
    "ignis",
    "ioc",
    "lifecycle",
    "loopback",
    "loopback4",
    "modular",
    "nodejs",
    "plugin-system",
    "repository-loading",
    "service-discovery",
    "template-method",
    "three-phase",
    "typescript",
    "venizia"
  ],
  "homepage": "https://ignis.venizia.ai",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/VENIZIA-AI/ignis.git",
    "directory": "packages/boot"
  },
  "bugs": {
    "url": "https://github.com/VENIZIA-AI/ignis/issues"
  },
  "author": {
    "name": "VENIZIA AI Developer",
    "email": "developer@venizia.ai",
    "url": "https://venizia.ai"
  },
  "license": "MIT",
  "engines": {
    "bun": ">=1.3"
  },
  "main": "./dist/cjs/index.js",
  "module": "./dist/esm/index.js",
  "types": "./dist/cjs/index.d.ts",
  "exports": {
    ".": {
      "types": "./dist/cjs/index.d.ts",
      "import": "./dist/esm/index.js",
      "require": "./dist/cjs/index.js",
      "default": "./dist/cjs/index.js"
    },
    "./package.json": "./package.json"
  },
  "files": [
    "README.md",
    "LICENSE.md",
    "dist",
    "!/**/tests",
    "!/**/dist/tests",
    "!/**/__tests__",
    "!**/*.tsbuildinfo"
  ],
  "publishConfig": {
    "access": "public"
  },
  "sideEffects": false,
  "scripts": {
    "force-update": "sh ./scripts/force-update.sh",
    "build": "sh ./scripts/build.sh",
    "clean": "sh ./scripts/clean.sh",
    "eslint": "eslint --report-unused-disable-directives .",
    "lint": "bun run eslint && bun run prettier:cli",
    "lint:fix": "bun run eslint --fix && bun run prettier:fix",
    "prettier:cli": "prettier \"**/*.{js,ts}\" -l",
    "prettier:fix": "bun run prettier:cli --write",
    "rebuild": "sh ./scripts/rebuild.sh no-version",
    "prepublishOnly": "bun run rebuild",
    "pretest": "bun run rebuild",
    "pretest:watch": "bun run rebuild",
    "test": "NODE_ENV=test bun test --env-file=.env.test dist/cjs/__tests__/{**/**,**}/*.test.js",
    "test:watch": "NODE_ENV=test bun test --watch --env-file=.env.test dist/cjs/__tests__/{**/**,**}/*.test.js"
  },
  "dependencies": {
    "@venizia/ignis-helpers": "^0.1.1",
    "@venizia/ignis-inversion": "^0.1.1",
    "glob": "^13.0.6",
    "lodash": "^4.18.1",
    "reflect-metadata": "^0.2.2"
  },
  "devDependencies": {
    "@types/bun": "^1.3.14",
    "@types/lodash": "^4.17.23",
    "@venizia/dev-configs": "^0.1.1",
    "eslint": "^10.7.0",
    "prettier": "^3.9.5",
    "tsc-alias": "^1.9.1",
    "typescript": "^6.0.3"
  }
}
