-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy pathpackage.json
101 lines (101 loc) · 3.04 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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
{
"name": "typescript-api-starter",
"version": "0.3.0",
"description": "Starter for Node.js express API with Typescript",
"main": "index.js",
"repository": {
"type": "git",
"url": "[email protected]:cham11ng/typescript-api-starter.git"
},
"author": {
"name": "Sagar Chamling",
"email": "[email protected]"
},
"engines": {
"node": ">= 20.9.0"
},
"scripts": {
"dev": "concurrently 'npx tsc --watch' 'nodemon -q build/index.js'",
"transpile": "tsc",
"clean": "rimraf build",
"sync-env": "sync-dotenv",
"build": "concurrently 'yarn clean' 'yarn lint:fix' 'yarn transpile'",
"send:mail": "ts-node scripts/mail-test",
"load:fake": "ts-node scripts/fake-loader",
"test": "NODE_ENV=test yarn migrate && NODE_ENV=test jest --forceExit --detectOpenHandles --maxWorkers=1 --verbose",
"seed": "knex seed:run --knexfile=knexfile.ts --verbose",
"migrate": "knex migrate:latest --knexfile=knexfile.ts --verbose",
"rollback": "knex migrate:rollback --knexfile=knexfile.ts --verbose",
"make:seeder": "knex seed:make --knexfile=knexfile.ts -x ts",
"make:migration": "knex migrate:make --knexfile=knexfile.ts -x ts",
"prepare": "husky install",
"lint": "eslint . --ext .ts,.json",
"lint:fix": "eslint --fix . --ext .ts,.json",
"prettify": "prettier 'src/**/*.ts' --write",
"prettier:check": "prettier --list-different 'src/**/*.ts'",
"format:code": "concurrently 'yarn lint:fix' 'yarn prettify' 'sync-dotenv'"
},
"lint-staged": {
"*.{ts,json}": [
"eslint --fix",
"prettier --write"
]
},
"private": true,
"license": "MIT",
"keywords": [
"api",
"es6",
"node",
"express",
"javascript",
"typescript"
],
"dependencies": {
"bcrypt": "^5.1.1",
"cors": "^2.8.5",
"dotenv": "^16.4.5",
"express": "4.19.2",
"express-rate-limit": "^7.2.0",
"helmet": "^7.1.0",
"http-status-codes": "^2.3.0",
"joi": "^17.12.2",
"jsonwebtoken": "^9.0.2",
"knex": "^3.1.0",
"nodemailer": "^6.9.13",
"nodemailer-markdown": "^1.0.3",
"objection": "^3.1.4",
"pg": "^8.11.3",
"winston": "^3.13.0",
"winston-daily-rotate-file": "^5.0.0"
},
"devDependencies": {
"@faker-js/faker": "^8.4.1",
"@types/bcrypt": "^5.0.2",
"@types/cors": "^2.8.17",
"@types/express": "^4.17.21",
"@types/jest": "^29.5.12",
"@types/jsonwebtoken": "^9.0.6",
"@types/node": "^20.11.30",
"@types/nodemailer": "^6.4.14",
"@types/supertest": "^6.0.2",
"@typescript-eslint/eslint-plugin": "^7.4.0",
"@typescript-eslint/parser": "^7.4.0",
"concurrently": "^8.2.2",
"eslint": "^8.57.0",
"eslint-plugin-jsdoc": "^48.2.2",
"eslint-plugin-simple-import-sort": "^12.0.0",
"eslint-plugin-sonarjs": "^0.25.0",
"husky": "^9.0.11",
"jest": "^29.7.0",
"lint-staged": "^15.2.2",
"nodemon": "^3.1.0",
"prettier": "^3.2.5",
"rimraf": "^5.0.5",
"supertest": "^6.3.4",
"sync-dotenv": "^2.7.0",
"ts-jest": "^29.1.2",
"ts-node": "^10.9.2",
"typescript": "^5.4.3"
}
}