1 | {
|
2 | "name": "fastify",
|
3 | "version": "4.28.0",
|
4 | "description": "Fast and low overhead web framework, for Node.js",
|
5 | "main": "fastify.js",
|
6 | "type": "commonjs",
|
7 | "types": "fastify.d.ts",
|
8 | "scripts": {
|
9 | "bench": "branchcmp -r 2 -g -s \"npm run benchmark\"",
|
10 | "benchmark": "concurrently -k -s first \"node ./examples/benchmark/simple.js\" \"autocannon -c 100 -d 30 -p 10 localhost:3000/\"",
|
11 | "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/\"",
|
12 | "build:validation": "node build/build-error-serializer.js && node build/build-validation.js",
|
13 | "coverage": "npm run unit -- --coverage-report=html",
|
14 | "coverage:ci": "c8 --reporter=lcov tap --coverage-report=html --no-browser --no-check-coverage",
|
15 | "coverage:ci-check-coverage": "c8 check-coverage --branches 100 --functions 100 --lines 100 --statements 100",
|
16 | "lint": "npm run lint:standard && npm run lint:typescript && npm run lint:markdown",
|
17 | "lint:fix": "standard --fix && npm run lint:typescript:fix",
|
18 | "lint:markdown": "markdownlint-cli2",
|
19 | "lint:standard": "standard | snazzy",
|
20 | "lint:typescript": "eslint -c types/.eslintrc.json types/**/*.d.ts test/types/**/*.test-d.ts",
|
21 | "lint:typescript:fix": "npm run lint:typescript -- --fix",
|
22 | "prepublishOnly": "cross-env PREPUBLISH=true tap --no-check-coverage test/build/**.test.js && npm run test:validator:integrity",
|
23 | "test": "npm run lint && npm run unit && npm run test:typescript",
|
24 | "test:ci": "npm run unit -- --cov --coverage-report=lcovonly && npm run test:typescript",
|
25 | "test:report": "npm run lint && npm run unit:report && npm run test:typescript",
|
26 | "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",
|
27 | "test:typescript": "tsc test/types/import.ts && tsd",
|
28 | "test:watch": "npm run unit -- --watch --cov --no-coverage-report --reporter=terse",
|
29 | "unit": "c8 tap",
|
30 | "unit:junit": "tap-mocha-reporter xunit < out.tap > test/junit-testresults.xml",
|
31 | "unit:report": "tap --cov --coverage-report=html --coverage-report=cobertura | tee out.tap",
|
32 | "citgm": "tap --jobs=1 --timeout=120"
|
33 | },
|
34 | "repository": {
|
35 | "type": "git",
|
36 | "url": "git+https://github.com/fastify/fastify.git"
|
37 | },
|
38 | "keywords": [
|
39 | "web",
|
40 | "framework",
|
41 | "json",
|
42 | "schema",
|
43 | "open",
|
44 | "api"
|
45 | ],
|
46 | "author": "Matteo Collina <hello@matteocollina.com>",
|
47 | "contributors": [
|
48 | {
|
49 | "name": "Tomas Della Vedova",
|
50 | "url": "http://delved.org",
|
51 | "author": true
|
52 | },
|
53 | {
|
54 | "name": "Tommaso Allevi",
|
55 | "email": "tomallevi@gmail.com"
|
56 | },
|
57 | {
|
58 | "name": "Ethan Arrowood",
|
59 | "url": "https://github.com/Ethan-Arrowood",
|
60 | "email": "ethan.arrowood@gmail.com"
|
61 | },
|
62 | {
|
63 | "name": "Dustin Deus",
|
64 | "url": "http://starptech.de",
|
65 | "email": "deusdustin@gmail.com"
|
66 | },
|
67 | {
|
68 | "name": "Ayoub El Khattabi",
|
69 | "url": "https://github.com/AyoubElk",
|
70 | "email": "elkhattabi.ayoub@gmail.com"
|
71 | },
|
72 | {
|
73 | "name": "Rafael Gonzaga",
|
74 | "email": "rafael.nunu@hotmail.com",
|
75 | "url": "https://github.com/rafaelgss"
|
76 | },
|
77 | {
|
78 | "name": "Trivikram Kamat",
|
79 | "url": "http://trivikr.github.io",
|
80 | "email": "trivikr.dev@gmail.com"
|
81 | },
|
82 | {
|
83 | "name": "Luciano Mammino",
|
84 | "url": "https://loige.co"
|
85 | },
|
86 | {
|
87 | "name": "Cemre Mengu",
|
88 | "email": "cemremengu@gmail.com"
|
89 | },
|
90 | {
|
91 | "name": "Evan Shortiss",
|
92 | "email": "evanshortiss@gmail.com"
|
93 | },
|
94 | {
|
95 | "name": "Maksim Sinik",
|
96 | "url": "https://maksim.dev"
|
97 | },
|
98 | {
|
99 | "name": "Manuel Spigolon",
|
100 | "email": "behemoth89@gmail.com"
|
101 | },
|
102 | {
|
103 | "name": "James Sumners",
|
104 | "url": "https://james.sumners.info"
|
105 | },
|
106 | {
|
107 | "name": "Denis Fäcke",
|
108 | "url": "https://github.com/SerayaEryn"
|
109 | },
|
110 | {
|
111 | "name": "Igor Savin",
|
112 | "email": "kibertoad@gmail.com",
|
113 | "url": "https://github.com/kibertoad"
|
114 | },
|
115 | {
|
116 | "name": "Vincent Le Goff",
|
117 | "email": "vince.legoff@gmail.com",
|
118 | "url": "https://github.com/zekth"
|
119 | },
|
120 | {
|
121 | "name": "Luis Orbaiceta",
|
122 | "email": "luisorbaiceta@gmail.com",
|
123 | "url": "https://luisorbaiceta.com"
|
124 | },
|
125 | {
|
126 | "name": "Carlos Fuentes",
|
127 | "email": "me@metcoder.dev",
|
128 | "url": "https://metcoder.dev"
|
129 | },
|
130 | {
|
131 | "name": "Gürgün Dayıoğlu",
|
132 | "email": "hey@gurgun.day",
|
133 | "url": "https://heyhey.to/G"
|
134 | },
|
135 | {
|
136 | "name": "Aras Abbasi",
|
137 | "email": "aras.abbasi@gmail.com"
|
138 | }
|
139 | ],
|
140 | "license": "MIT",
|
141 | "bugs": {
|
142 | "url": "https://github.com/fastify/fastify/issues"
|
143 | },
|
144 | "homepage": "https://fastify.dev/",
|
145 | "funding": [
|
146 | {
|
147 | "type": "github",
|
148 | "url": "https://github.com/sponsors/fastify"
|
149 | },
|
150 | {
|
151 | "type": "opencollective",
|
152 | "url": "https://opencollective.com/fastify"
|
153 | }
|
154 | ],
|
155 | "devDependencies": {
|
156 | "@fastify/pre-commit": "^2.0.2",
|
157 | "@sinclair/typebox": "^0.31.17",
|
158 | "@sinonjs/fake-timers": "^11.1.0",
|
159 | "@types/node": "^20.8.4",
|
160 | "@typescript-eslint/eslint-plugin": "^6.7.5",
|
161 | "@typescript-eslint/parser": "^6.7.5",
|
162 | "ajv": "^8.12.0",
|
163 | "ajv-errors": "^3.0.0",
|
164 | "ajv-formats": "^2.1.1",
|
165 | "ajv-i18n": "^4.2.0",
|
166 | "ajv-merge-patch": "^5.0.1",
|
167 | "autocannon": "^7.14.0",
|
168 | "branch-comparer": "^1.1.0",
|
169 | "c8": "^8.0.1",
|
170 | "concurrently": "^8.2.2",
|
171 | "cross-env": "^7.0.3",
|
172 | "eslint": "^8.51.0",
|
173 | "eslint-config-standard": "^17.1.0",
|
174 | "eslint-import-resolver-node": "^0.3.9",
|
175 | "eslint-plugin-import": "^2.28.1",
|
176 | "eslint-plugin-n": "^16.2.0",
|
177 | "eslint-plugin-promise": "^6.1.1",
|
178 | "fast-json-body": "^1.1.0",
|
179 | "fastify-plugin": "^4.5.1",
|
180 | "fluent-json-schema": "^4.1.2",
|
181 | "form-data": "^4.0.0",
|
182 | "h2url": "^0.2.0",
|
183 | "http-errors": "^2.0.0",
|
184 | "joi": "^17.11.0",
|
185 | "json-schema-to-ts": "^2.9.2",
|
186 | "JSONStream": "^1.3.5",
|
187 | "markdownlint-cli2": "^0.10.0",
|
188 | "node-forge": "^1.3.1",
|
189 | "proxyquire": "^2.1.3",
|
190 | "send": "^0.18.0",
|
191 | "simple-get": "^4.0.1",
|
192 | "snazzy": "^9.0.0",
|
193 | "split2": "^4.2.0",
|
194 | "standard": "^17.1.0",
|
195 | "tap": "^16.3.9",
|
196 | "tsd": "^0.29.0",
|
197 | "typescript": "^5.2.2",
|
198 | "undici": "^5.26.0",
|
199 | "vary": "^1.1.2",
|
200 | "yup": "^1.3.2"
|
201 | },
|
202 | "dependencies": {
|
203 | "@fastify/ajv-compiler": "^3.5.0",
|
204 | "@fastify/error": "^3.4.0",
|
205 | "@fastify/fast-json-stringify-compiler": "^4.3.0",
|
206 | "abstract-logging": "^2.0.1",
|
207 | "avvio": "^8.3.0",
|
208 | "fast-content-type-parse": "^1.1.0",
|
209 | "fast-json-stringify": "^5.8.0",
|
210 | "find-my-way": "^8.0.0",
|
211 | "light-my-request": "^5.11.0",
|
212 | "pino": "^9.0.0",
|
213 | "process-warning": "^3.0.0",
|
214 | "proxy-addr": "^2.0.7",
|
215 | "rfdc": "^1.3.0",
|
216 | "secure-json-parse": "^2.7.0",
|
217 | "semver": "^7.5.4",
|
218 | "toad-cache": "^3.3.0"
|
219 | },
|
220 | "standard": {
|
221 | "ignore": [
|
222 | "lib/configValidator.js",
|
223 | "lib/error-serializer.js",
|
224 | "fastify.d.ts",
|
225 | "types/*",
|
226 | "test/types/*",
|
227 | "test/same-shape.test.js"
|
228 | ]
|
229 | },
|
230 | "tsd": {
|
231 | "directory": "test/types"
|
232 | }
|
233 | }
|