70 lines
1.8 KiB
JSON
70 lines
1.8 KiB
JSON
{
|
|
"name": "api-bff",
|
|
"version": "1.0.0",
|
|
"private": true,
|
|
"description": "LynkedUp GraphQL Backend for Frontend (BFF)",
|
|
"license": "ISC",
|
|
"author": "",
|
|
"type": "module",
|
|
"main": "src/main.ts",
|
|
"scripts": {
|
|
"build": "tsc",
|
|
"start": "node src/main.ts",
|
|
"dev": "tsx watch src/main.ts",
|
|
"test": "jest",
|
|
"lint": "eslint src --ext .ts",
|
|
"typecheck": "tsc --noEmit",
|
|
"codegen": "graphql-codegen --config codegen.ts",
|
|
"db:migrate": "prisma migrate dev",
|
|
"db:generate": "prisma generate",
|
|
"db:seed": "tsx src/database/seed.ts"
|
|
},
|
|
"dependencies": {
|
|
"@apollo/server": "^4.9.5",
|
|
"@as-integrations/fastify": "^2.1.1",
|
|
"@fastify/cors": "^8.4.0",
|
|
"@fastify/helmet": "^11.1.1",
|
|
"@fastify/rate-limit": "^9.0.1",
|
|
"@graphql-tools/schema": "^10.0.0",
|
|
"@open-policy-agent/opa": "^2.0.0",
|
|
"@prisma/client": "^5.6.0",
|
|
"@types/express": "^5.0.6",
|
|
"axios": "^1.13.2",
|
|
"bcrypt": "^5.1.1",
|
|
"dataloader": "^2.2.2",
|
|
"express": "^5.2.1",
|
|
"fastify": "^4.24.3",
|
|
"graphql": "^16.8.1",
|
|
"graphql-scalars": "^1.22.4",
|
|
"jsonwebtoken": "^9.0.2",
|
|
"pino": "^8.17.0",
|
|
"redis": "^4.6.10",
|
|
"uuid": "^9.0.1",
|
|
"zod": "^3.22.4"
|
|
},
|
|
"devDependencies": {
|
|
"@graphql-codegen/cli": "^5.0.0",
|
|
"@graphql-codegen/typescript": "^4.0.1",
|
|
"@graphql-codegen/typescript-resolvers": "^4.0.1",
|
|
"@types/bcrypt": "^5.0.2",
|
|
"@types/jsonwebtoken": "^9.0.5",
|
|
"@types/node": "^20.9.0",
|
|
"@types/uuid": "^9.0.7",
|
|
"@typescript-eslint/eslint-plugin": "^6.12.0",
|
|
"@typescript-eslint/parser": "^6.12.0",
|
|
"eslint": "^8.54.0",
|
|
"jest": "^29.7.0",
|
|
"prisma": "^5.6.0",
|
|
"ts-jest": "^29.1.1",
|
|
"tsx": "^4.4.0",
|
|
"typescript": "^5.2.2"
|
|
},
|
|
"nx": {
|
|
"tags": [
|
|
"scope:app",
|
|
"type:api",
|
|
"platform:node"
|
|
]
|
|
}
|
|
}
|