{
  "name": "fastify",
  "version": "5.0.0",
  "description": "Fast and low overhead web framework, for Node.js",
  "main": "fastify.js",
  "type": "commonjs",
  "types": "fastify.d.ts",
  "scripts": {
    "bench": "branchcmp -r 2 -g -s \"npm run benchmark\"",
    "benchmark": "concurrently -k -s first \"node ./examples/benchmark/simple.js\" \"autocannon -c 100 -d 30 -p 10 localhost:3000/\"",
    "benchmark:parser": "concurrently -k -s first \"node ./examples/benchmark/parser.js\" \"autocannon -c 100 -d 30 -p 10 -i ./examples/benchmark/body.json -H \"content-type:application/jsoff\" -m POST localhost:3000/\"",
    "build:validation": "node build/build-error-serializer.js && node build/build-validation.js",
    "coverage": "npm run unit -- --coverage-report=html",
    "coverage:ci": "tap --coverage-report=html --coverage-report=lcov --allow-incomplete-coverage",
    "coverage:ci-check-coverage": "tap replay",
    "lint": "npm run lint:eslint",
    "lint:fix": "eslint --fix",
    "lint:markdown": "markdownlint-cli2",
    "lint:eslint": "eslint",
    "prepublishOnly": "cross-env PREPUBLISH=true tap --allow-incomplete-coverage test/build/**.test.js && npm run test:validator:integrity",
    "test": "npm run lint && npm run unit && npm run test:typescript",
    "test:ci": "npm run unit -- --coverage-report=lcovonly && npm run test:typescript",
    "test:report": "npm run lint && npm run unit:report && npm run test:typescript",
    "test:validator:integrity": "npm run build:validation && git diff --quiet --ignore-all-space --ignore-blank-lines --ignore-cr-at-eol lib/error-serializer.js && git diff --quiet --ignore-all-space --ignore-blank-lines --ignore-cr-at-eol lib/configValidator.js",
    "test:typescript": "tsc test/types/import.ts --noEmit && tsd",
    "test:watch": "npm run unit -- --watch --coverage-report=none --reporter=terse",
    "unit": "tap",
    "unit:junit": "tap-mocha-reporter xunit < out.tap > test/junit-testresults.xml",
    "unit:report": "tap --coverage-report=html --coverage-report=cobertura | tee out.tap",
    "citgm": "tap --jobs=1 --timeout=120"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/fastify/fastify.git"
  },
  "keywords": [
    "web",
    "framework",
    "json",
    "schema",
    "open",
    "api"
  ],
  "author": "Matteo Collina <hello@matteocollina.com>",
  "contributors": [
    {
      "name": "Tomas Della Vedova",
      "url": "http://delved.org",
      "author": true
    },
    {
      "name": "Tommaso Allevi",
      "email": "tomallevi@gmail.com"
    },
    {
      "name": "Ethan Arrowood",
      "url": "https://github.com/Ethan-Arrowood",
      "email": "ethan.arrowood@gmail.com"
    },
    {
      "name": "Dustin Deus",
      "url": "http://starptech.de",
      "email": "deusdustin@gmail.com"
    },
    {
      "name": "Ayoub El Khattabi",
      "url": "https://github.com/AyoubElk",
      "email": "elkhattabi.ayoub@gmail.com"
    },
    {
      "name": "Rafael Gonzaga",
      "email": "rafael.nunu@hotmail.com",
      "url": "https://github.com/rafaelgss"
    },
    {
      "name": "Trivikram Kamat",
      "url": "http://trivikr.github.io",
      "email": "trivikr.dev@gmail.com"
    },
    {
      "name": "Luciano Mammino",
      "url": "https://loige.co"
    },
    {
      "name": "Cemre Mengu",
      "email": "cemremengu@gmail.com"
    },
    {
      "name": "Evan Shortiss",
      "email": "evanshortiss@gmail.com"
    },
    {
      "name": "Maksim Sinik",
      "url": "https://maksim.dev"
    },
    {
      "name": "Manuel Spigolon",
      "email": "behemoth89@gmail.com"
    },
    {
      "name": "James Sumners",
      "url": "https://james.sumners.info"
    },
    {
      "name": "Denis Fäcke",
      "url": "https://github.com/SerayaEryn"
    },
    {
      "name": "Igor Savin",
      "email": "kibertoad@gmail.com",
      "url": "https://github.com/kibertoad"
    },
    {
      "name": "Vincent Le Goff",
      "email": "vince.legoff@gmail.com",
      "url": "https://github.com/zekth"
    },
    {
      "name": "Luis Orbaiceta",
      "email": "luisorbaiceta@gmail.com",
      "url": "https://luisorbaiceta.com"
    },
    {
      "name": "Carlos Fuentes",
      "email": "me@metcoder.dev",
      "url": "https://metcoder.dev"
    },
    {
      "name": "Gürgün Dayıoğlu",
      "email": "hey@gurgun.day",
      "url": "https://heyhey.to/G"
    },
    {
      "name": "Aras Abbasi",
      "email": "aras.abbasi@gmail.com"
    }
  ],
  "license": "MIT",
  "bugs": {
    "url": "https://github.com/fastify/fastify/issues"
  },
  "homepage": "https://fastify.dev/",
  "funding": [
    {
      "type": "github",
      "url": "https://github.com/sponsors/fastify"
    },
    {
      "type": "opencollective",
      "url": "https://opencollective.com/fastify"
    }
  ],
  "devDependencies": {
    "@fastify/pre-commit": "^2.1.0",
    "@sinclair/typebox": "^0.33.4",
    "@sinonjs/fake-timers": "^11.2.2",
    "@stylistic/eslint-plugin": "^2.1.0",
    "@stylistic/eslint-plugin-js": "^2.1.0",
    "@types/node": "^22.0.0",
    "ajv": "^8.12.0",
    "ajv-errors": "^3.0.0",
    "ajv-formats": "^3.0.1",
    "ajv-i18n": "^4.2.0",
    "ajv-merge-patch": "^5.0.1",
    "autocannon": "^7.15.0",
    "branch-comparer": "^1.1.0",
    "concurrently": "^8.2.2",
    "cross-env": "^7.0.3",
    "eslint": "^9.0.0",
    "fast-json-body": "^1.1.0",
    "fastify-plugin": "^4.5.1",
    "fluent-json-schema": "^5.0.0",
    "h2url": "^0.2.0",
    "http-errors": "^2.0.0",
    "joi": "^17.12.3",
    "json-schema-to-ts": "^3.0.1",
    "JSONStream": "^1.3.5",
    "markdownlint-cli2": "^0.13.0",
    "neostandard": "^0.11.3",
    "node-forge": "^1.3.1",
    "proxyquire": "^2.1.3",
    "send": "^0.18.0",
    "simple-get": "^4.0.1",
    "split2": "^4.2.0",
    "tap": "^21.0.0",
    "tsd": "^0.31.0",
    "typescript": "^5.4.5",
    "undici": "^6.13.0",
    "vary": "^1.1.2",
    "yup": "^1.4.0"
  },
  "dependencies": {
    "@fastify/ajv-compiler": "^4.0.0",
    "@fastify/error": "^4.0.0",
    "@fastify/fast-json-stringify-compiler": "^5.0.0",
    "abstract-logging": "^2.0.1",
    "avvio": "^9.0.0",
    "fast-json-stringify": "^6.0.0",
    "find-my-way": "^9.0.0",
    "light-my-request": "^6.0.0",
    "pino": "^9.0.0",
    "process-warning": "^4.0.0",
    "proxy-addr": "^2.0.7",
    "rfdc": "^1.3.1",
    "secure-json-parse": "^2.7.0",
    "semver": "^7.6.0",
    "toad-cache": "^3.7.0"
  },
  "tsd": {
    "directory": "test/types"
  }
}
