A personal media tracker built on the AT Protocol
opnshelf.xyz
1{
2 "name": "backend",
3 "version": "0.0.1",
4 "description": "",
5 "author": "",
6 "private": true,
7 "license": "UNLICENSED",
8 "scripts": {
9 "build": "nest build",
10 "prebuild": "prisma generate && pnpm run lex:build",
11 "railway:build": "prisma generate && nest build",
12 "lex:build": "lex build --lexicons ../lexicons --out ./src/lexicons --clear && pnpm format",
13 "lex:install": "lex install",
14 "format": "biome format",
15 "lint": "biome lint",
16 "check": "biome check",
17 "typecheck": "tsc --noEmit -p tsconfig.json",
18 "start": "nest start",
19 "start:dev": "nest start --watch",
20 "dev": "nest start --watch",
21 "start:debug": "nest start --debug --watch",
22 "start:prod": "node dist/src/main.js",
23 "test": "jest",
24 "test:watch": "jest --watch",
25 "test:cov": "jest --coverage",
26 "test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand",
27 "test:e2e": "jest --config ./test/jest-e2e.json"
28 },
29 "dependencies": {
30 "@atproto/api": "^0.18.18",
31 "@atproto/common": "^0.5.11",
32 "@atproto/identity": "^0.4.10",
33 "@atproto/lex": "^0.0.14",
34 "@atproto/oauth-client-node": "^0.3.16",
35 "@atproto/sync": "^0.1.39",
36 "@atproto/tap": "^0.2.3",
37 "@nestjs/common": "^11.0.1",
38 "@nestjs/config": "^4.0.2",
39 "@nestjs/core": "^11.0.1",
40 "@nestjs/platform-express": "^11.0.1",
41 "@nestjs/swagger": "^11.2.5",
42 "@prisma/adapter-pg": "^7.3.0",
43 "@prisma/client": "^7.3.0",
44 "class-transformer": "^0.5.1",
45 "class-validator": "^0.14.3",
46 "cookie-parser": "^1.4.7",
47 "jimp": "^1.6.0",
48 "reflect-metadata": "^0.2.2",
49 "rxjs": "^7.8.1",
50 "swagger-ui-express": "^5.0.1"
51 },
52 "devDependencies": {
53 "@biomejs/biome": "2.2.4",
54 "@nestjs/cli": "^11.0.0",
55 "@nestjs/schematics": "^11.0.0",
56 "@nestjs/testing": "^11.0.1",
57 "@types/cookie-parser": "^1.4.10",
58 "@types/express": "^5.0.0",
59 "@types/jest": "^30.0.0",
60 "@types/node": "^22.10.7",
61 "@types/supertest": "^6.0.2",
62 "dotenv": "^17.2.3",
63 "jest": "^30.0.0",
64 "prisma": "^7.3.0",
65 "source-map-support": "^0.5.21",
66 "supertest": "^7.0.0",
67 "ts-jest": "^29.2.5",
68 "ts-loader": "^9.5.2",
69 "ts-node": "^10.9.2",
70 "tsconfig-paths": "^4.2.0",
71 "typescript": "^5.7.3"
72 },
73 "jest": {
74 "moduleFileExtensions": [
75 "js",
76 "json",
77 "ts"
78 ],
79 "rootDir": "src",
80 "testRegex": ".*\\.spec\\.ts$",
81 "transform": {
82 "^.+\\.(t|j)s$": "ts-jest"
83 },
84 "collectCoverageFrom": [
85 "**/*.(t|j)s"
86 ],
87 "coverageDirectory": "../coverage",
88 "testEnvironment": "node",
89 "moduleNameMapper": {
90 "^(.*)\\.js$": "$1"
91 }
92 },
93 "packageManager": "pnpm@10.28.2"
94}