UNPKG

@athenna/http

Version:

The Athenna Http server. Built on top of fastify.

241 lines (240 loc) 7.28 kB
{ "name": "@athenna/http", "version": "5.28.0", "description": "The Athenna Http server. Built on top of fastify.", "license": "MIT", "author": "João Lenon <lenon@athenna.io>", "bugs": "https://github.com/AthennaIO/Http/issues", "repository": "https://github.com/AthennaIO/Http.git", "homepage": "https://github.com/AthennaIO/Http#readme", "keywords": [ "fastify", "router", "cors", "ctx", "helmet", "swagger", "exception-handling", "rate-limiting", "middlewares", "terminators", "interceptors", "http-server", "athenna", "esm" ], "engines": { "node": ">=20.0.0" }, "scripts": { "build": "node node_modules/@athenna/tsconfig/src/build.js", "lint:fix": "eslint \"{bin,src,tests}/**/*.ts\" --fix", "benchmark": "node --no-warnings --enable-source-maps --import=@athenna/tsconfig tests/benchmarks/ServerTest.ts", "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", "resources" ], "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", "./vite/plugin": "./src/vite/plugin.js", "./testing/plugins": "./src/testing/plugins/index.js", "./kernels/HttpKernel": "./src/kernels/HttpKernel.js", "./handlers/HttpExceptionHandler": "./src/handlers/HttpExceptionHandler.js", "./providers/HttpRouteProvider": "./src/providers/HttpRouteProvider.js", "./providers/HttpServerProvider": "./src/providers/HttpServerProvider.js", "./commands/RouteListCommand": "./src/commands/RouteListCommand.js", "./commands/MakeControllerCommand": "./src/commands/MakeControllerCommand.js", "./commands/MakeMiddlewareCommand": "./src/commands/MakeMiddlewareCommand.js", "./commands/MakeTerminatorCommand": "./src/commands/MakeTerminatorCommand.js", "./commands/MakeInterceptorCommand": "./src/commands/MakeInterceptorCommand.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" }, "devDependencies": { "@athenna/artisan": "^5.6.0", "@athenna/common": "^5.7.0", "@athenna/config": "^5.3.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", "@athenna/vite": "^5.13.0", "@fastify/cors": "^10.0.2", "@fastify/helmet": "^13.0.1", "@fastify/multipart": "^9.0.3", "@fastify/rate-limit": "^10.2.2", "@fastify/static": "^8.0.4", "@fastify/swagger": "^9.4.2", "@fastify/swagger-ui": "^5.2.1", "@typescript-eslint/eslint-plugin": "^8.21.0", "@typescript-eslint/parser": "^8.21.0", "autocannon": "^7.15.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", "foreground-child": "^2.0.0", "husky": "^3.1.0", "lint-staged": "^12.5.0", "ora": "^8.1.1", "prettier": "^2.8.8", "vite": "^6.0.11", "vite-plugin-restart": "^0.4.2" }, "c8": { "all": true, "include": [ "src/**/*.ts" ], "exclude": [ "src/types/*", "src/exceptions/*", "src/commands/*" ], "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": [], "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": { "controller": "./templates/controller.edge", "interceptor": "./templates/interceptor.edge", "middleware": "./templates/middleware.edge", "terminator": "./templates/terminator.edge", "command": "@athenna/artisan/templates/command.edge" }, "controllers": [ "#tests/fixtures/controllers/HelloController", "#tests/fixtures/controllers/AnnotatedController" ], "middlewares": [ "#tests/fixtures/middlewares/MyMiddleware", "#tests/fixtures/middlewares/ImportedMiddleware" ], "namedMiddlewares": { "myMiddleware": "#tests/fixtures/middlewares/MyMiddleware", "myInterceptor": "#tests/fixtures/middlewares/MyInterceptor", "myTerminator": "#tests/fixtures/middlewares/MyTerminator", "not-found-middleware": "#tests/fixtures/middlewares/AnnotatedMiddleware", "not-found-interceptor": "#tests/fixtures/middlewares/AnnotatedInterceptor", "not-found-terminator": "#tests/fixtures/middlewares/AnnotatedTerminator" }, "globalMiddlewares": [ "#tests/fixtures/middlewares/MyMiddleware", "#tests/fixtures/middlewares/MyInterceptor", "#tests/fixtures/middlewares/MyTerminator", "#tests/fixtures/middlewares/AnnotatedGlobalMiddleware", "#tests/fixtures/middlewares/AnnotatedGlobalInterceptor", "#tests/fixtures/middlewares/AnnotatedGlobalTerminator" ] } }