-
Notifications
You must be signed in to change notification settings - Fork 2
/
package.json
86 lines (86 loc) · 3.59 KB
/
package.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
{
"name": "pets-api",
"version": "1.0.0",
"description": "Express API developed in Typescript and deployed to ECS Fargate that sits behind a private Application Load Balancer and exposed to the world using an Http API Gateway.",
"main": "dist/server.js",
"type": "module",
"scripts": {
"prepare": "husky install",
"lint": "eslint . --ext .ts --fix",
"prettify": "prettier --write \"**/*.+(js|ts|json)\"",
"prebuild": "npm run lint && npm run build:clean",
"build": "tsc",
"build:clean": "rm -rf dist",
"postbuild": "cp -R src/schemas dist",
"prestart": "npm run build",
"start": "node .",
"start:watch": "nodemon --watch \"src/**\" --ext \"ts,json\" --ignore \"src/**/*.spec.ts\" --exec \"node --loader ts-node/esm src/server.ts\"",
"test": "npm run test:clean && jest --coverage",
"test:watch": "npm run test -- --watchAll",
"test:coverage:view": "serve jest/coverage/lcov-report",
"test:clean": "rm -rf jest",
"docker:up": "docker-compose -f ./docker-compose.yml up -d",
"docker:down": "docker-compose kill",
"docker:build": "npm run build && docker build -t pets-api .",
"docker:run": "docker run -it --rm -p 80:3000 --name='pets-api' --network=ecs-node-typescript-express-api_pets-api-network pets-api",
"prisma:db:seed": "prisma db seed",
"prisma:db:pull": "prisma db pull",
"prisma:db:push": "prisma db push",
"prisma:generate": "prisma generate",
"prisma:migrate": "prisma migrate dev",
"prisma:migrate:create": "prisma migrate dev --create-only",
"prisma:migrate:reset": "prisma migrate reset",
"prisma:migrate:deploy": "prisma migrate deploy",
"speccy:resolve": "npm run speccy:clean && speccy resolve -j openapi.json -o openapi.yml",
"speccy:lint": "speccy lint -j openapi.json",
"speccy:clean": "rm -f openapi.yml",
"cf:stack:deploy": "aws cloudformation deploy --template-file ./template.yaml --stack-name pets-api --capabilities CAPABILITY_NAMED_IAM --parameter-overrides $(cat .env)",
"cf:stack:deploy:role": "npm run cf:stack:deploy -- --role-arn",
"cf:stack:delete": "aws cloudformation delete-stack --stack-name pets-api",
"cf:stack:describe": "aws cloudformation describe-stacks --stack-name pets-api",
"cf:template:validate": "aws cloudformation validate-template --template-body file://template.yaml",
"newman:run": "newman run ./newman/pets-api.postman_collection.json -e ./newman/pets-api-localhost.postman_environment.json -n"
},
"author": "jquirossoto",
"license": "ISC",
"dependencies": {
"@prisma/client": "^3.8.0",
"ajv": "^8.8.2",
"express": "^4.17.2",
"express-winston": "^4.2.0",
"helmet": "^5.0.1",
"nocache": "^3.0.1",
"npm": "^8.3.0",
"prisma": "^3.8.0",
"speccy": "^0.11.0",
"winston": "^3.4.0"
},
"devDependencies": {
"@jest-mock/express": "^1.4.5",
"@types/express": "^4.17.13",
"@types/jest": "^27.4.0",
"@types/node": "^17.0.8",
"@types/source-map-support": "^0.5.4",
"@typescript-eslint/eslint-plugin": "^5.9.1",
"@typescript-eslint/parser": "^5.9.1",
"eslint": "^8.6.0",
"eslint-config-prettier": "^8.3.0",
"husky": "^7.0.0",
"jest": "^27.4.7",
"jest-junit": "^13.0.0",
"jest-mock-extended": "^2.0.2-beta2",
"jest-ts-webcompat-resolver": "^1.0.0",
"newman": "^5.3.1",
"nodemon": "^2.0.15",
"prettier": "^2.5.1",
"pretty-quick": "^3.1.3",
"serve": "^13.0.2",
"source-map-support": "^0.5.21",
"ts-jest": "^27.1.2",
"ts-node": "^10.4.0",
"typescript": "^4.5.4"
},
"prisma": {
"seed": "node --loader ts-node/esm prisma/seed.ts"
}
}