@athenna/core
Version:
One foundation for multiple applications.
275 lines (274 loc) • 7.86 kB
JSON
{
"name": "@athenna/core",
"version": "5.13.0",
"description": "One foundation for multiple applications.",
"license": "MIT",
"author": "João Lenon <lenon@athenna.io>",
"bugs": "https://github.com/AthennaIO/Core/issues",
"repository": "https://github.com/AthennaIO/Core.git",
"homepage": "https://github.com/AthennaIO/Core#readme",
"keywords": [
"esm",
"core",
"cli",
"rest",
"rest-api",
"http-server",
"console",
"cron",
"cronjob",
"scheduler",
"ignite",
"nodejs",
"athenna",
"bootstrap",
"typescript"
],
"engines": {
"node": ">=20.0.0"
},
"scripts": {
"build": "node node_modules/@athenna/tsconfig/src/build.js",
"lint:fix": "eslint \"{bin,src,tests}/**/*.ts\" --fix",
"test": "npm run --silent lint:fix && node --enable-source-maps --import=@athenna/tsconfig bin/test.ts",
"test:debug": "cross-env NODE_DEBUG=athenna:* node --inspect --enable-source-maps --import=@athenna/tsconfig bin/test.ts",
"test:coverage": "c8 npm run --silent test"
},
"files": [
"src/*.js",
"src/*.d.ts",
"src/**/*.js",
"src/**/*.d.ts",
"templates",
"configurer"
],
"type": "module",
"main": "./src/index.js",
"types": "./src/index.d.ts",
"exports": {
".": "./src/index.js",
"./types": "./src/types/index.js",
"./package": "./package.json",
"./package.json": "./package.json",
"./providers/CoreProvider": "./src/providers/CoreProvider.js",
"./commands/MakeExceptionCommand": "./src/commands/MakeExceptionCommand.js",
"./commands/MakeFacadeCommand": "./src/commands/MakeFacadeCommand.js",
"./commands/MakeProviderCommand": "./src/commands/MakeProviderCommand.js",
"./commands/MakeServiceCommand": "./src/commands/MakeServiceCommand.js",
"./commands/MakeTestCommand": "./src/commands/MakeTestCommand.js",
"./commands/ReplCommand": "./src/commands/ReplCommand.js",
"./commands/ServeCommand": "./src/commands/ServeCommand.js",
"./commands/TestCommand": "./src/commands/TestCommand.js",
"./commands/BuildCommand": "./src/commands/BuildCommand.js",
"./commands/InstallCommand": "./src/commands/InstallCommand.js",
"./testing/BaseHttpTest": "./src/testing/BaseHttpTest.js",
"./testing/BaseCronTest": "./src/testing/BaseCronTest.js",
"./testing/BaseConsoleTest": "./src/testing/BaseConsoleTest.js"
},
"imports": {
"#bin/*": "./bin/*.js",
"#bin": "./bin/index.js",
"#src/*": "./src/*.js",
"#src": "./src/index.js",
"#src/types": "./src/types/index.js",
"#src/debug": "./src/debug/index.js",
"#tests/*": "./tests/*.js",
"#tests": "./tests/index.js",
"#routes/*": "./routes/*.js"
},
"dependencies": {
"pretty-repl": "^3.1.2",
"semver": "^7.6.3"
},
"devDependencies": {
"@athenna/artisan": "^5.6.0",
"@athenna/common": "^5.7.0",
"@athenna/config": "^5.3.0",
"@athenna/cron": "^5.4.0",
"@athenna/http": "^5.25.0",
"@athenna/ioc": "^5.1.0",
"@athenna/logger": "^5.3.0",
"@athenna/test": "^5.3.0",
"@athenna/tsconfig": "^5.0.0",
"@athenna/view": "^5.3.0",
"@typescript-eslint/eslint-plugin": "^7.18.0",
"@typescript-eslint/parser": "^7.18.0",
"commitizen": "^4.3.1",
"cz-conventional-changelog": "^3.3.0",
"eslint": "^8.57.1",
"eslint-config-prettier": "^8.10.0",
"eslint-config-standard": "^17.1.0",
"eslint-plugin-import": "^2.31.0",
"eslint-plugin-n": "^15.7.0",
"eslint-plugin-prettier": "^4.2.1",
"eslint-plugin-promise": "^6.6.0",
"husky": "^3.1.0",
"lint-staged": "^12.5.0",
"nodemon": "^3.1.9",
"prettier": "^2.8.8",
"vite": "^6.0.11"
},
"c8": {
"all": true,
"include": [
"src/**/*.ts"
],
"exclude": [
"src/testing/BaseConsoleTest.ts",
"src/testing/BaseHttpTest.ts",
"src/repl/helpers/Command.ts",
"src/types/*"
],
"reporter": [
"text-summary",
"html"
],
"report-dir": "./tests/coverage",
"check-coverage": true
},
"husky": {
"hooks": {
"prepare-commit-msg": "lint-staged && exec < /dev/tty && git cz --hook || true"
}
},
"lint-staged": {
"*.ts": [
"eslint --fix",
"git add"
],
"*.json": [
"prettier --write",
"git add"
]
},
"config": {
"commitizen": {
"path": "./node_modules/cz-conventional-changelog"
}
},
"prettier": {
"singleQuote": true,
"trailingComma": "none",
"arrowParens": "avoid",
"endOfLine": "lf",
"semi": false,
"printWidth": 80,
"overrides": [
{
"files": "tests/**/*",
"options": {
"printWidth": 120
}
}
]
},
"eslintIgnore": [
"tests/fixtures/syntaxErrorConfig/*"
],
"eslintConfig": {
"env": {
"es2021": true,
"node": true
},
"globals": {
"ioc": true,
"Env": true,
"Path": true,
"Config": true
},
"plugins": [
"prettier",
"@typescript-eslint"
],
"extends": [
"standard",
"eslint:recommended",
"plugin:prettier/recommended",
"plugin:@typescript-eslint/recommended",
"plugin:@typescript-eslint/eslint-recommended"
],
"parser": "@typescript-eslint/parser",
"rules": {
"camelcase": "off",
"dot-notation": "off",
"prettier/prettier": "error",
"no-useless-constructor": "off",
"@typescript-eslint/no-explicit-any": "off",
"@typescript-eslint/no-empty-function": "off",
"@typescript-eslint/no-unused-vars": [
"error",
{
"argsIgnorePattern": "^_",
"varsIgnorePattern": "^_",
"caughtErrorsIgnorePattern": "^_"
}
]
}
},
"athenna": {
"templates": {
"exception": "./templates/exception.edge",
"facade": "./templates/facade.edge",
"provider": "./templates/provider.edge",
"service": "./templates/service.edge",
"test": "./templates/test.edge",
"test-console": "./templates/test-console.edge",
"test-http": "./templates/test-http.edge",
"test-cron": "./templates/test-cron.edge",
"test-fn": "./templates/test-fn.edge",
"command": "node_modules/@athenna/artisan/templates/command.edge",
"controller": "node_modules/@athenna/http/templates/controller.edge",
"middleware": "node_modules/@athenna/http/templates/middleware.edge",
"interceptor": "node_modules/@athenna/http/templates/interceptor.edge",
"terminator": "node_modules/@athenna/http/templates/terminator.edge"
},
"directories": {
"bootstrap": "bin"
},
"schedulers": [
"#tests/fixtures/schedulers/HelloScheduler"
],
"commands": {
"make:exception": {
"path": "#src/commands/MakeExceptionCommand"
},
"make:facade": {
"path": "#src/commands/MakeFacadeCommand"
},
"make:provider": {
"path": "#src/commands/MakeProviderCommand"
},
"make:service": {
"path": "#src/commands/MakeServiceCommand"
},
"make:test": {
"path": "#src/commands/MakeTestCommand"
},
"serve": {
"stayAlive": true,
"path": "#src/commands/ServeCommand"
},
"test": {
"stayAlive": true,
"path": "#src/commands/TestCommand"
},
"repl": {
"stayAlive": true,
"path": "#src/commands/ReplCommand"
},
"build": {
"path": "#src/commands/BuildCommand",
"tsconfig": "./tests/fixtures/tsconfig.json",
"outDir": "build"
},
"install": {
"path": "#src/commands/InstallCommand"
}
},
"providers": [
"#src/providers/CoreProvider",
"@athenna/http/providers/HttpRouteProvider",
"@athenna/http/providers/HttpServerProvider"
]
}
}