A tool for parsing traffic on the jetstream and applying a moderation workstream based on regexp based rules
at main 1.9 kB view raw
1{ 2 "name": "skywatch-automod", 3 "version": "2.1.0", 4 "type": "module", 5 "scripts": { 6 "start": "npx tsx src/main.ts", 7 "dev": "npx tsx --watch src/main.ts", 8 "test": "vitest", 9 "test:ui": "vitest --ui", 10 "test:run": "vitest run", 11 "test:coverage": "vitest run --coverage", 12 "type-check": "tsc --noEmit", 13 "format": "bunx prettier --write .", 14 "lint": "bunx eslint .", 15 "lint:fix": "bunx eslint --fix .", 16 "prepare": "bunx husky install" 17 }, 18 "lint-staged": { 19 "*": "prettier --ignore-unknown --write" 20 }, 21 "devDependencies": { 22 "@eslint/js": "^9.34.0", 23 "@stylistic/eslint-plugin": "^5.5.0", 24 "@trivago/prettier-plugin-sort-imports": "^4.3.0", 25 "@types/better-sqlite3": "^7.6.13", 26 "@types/eslint__js": "^8.42.3", 27 "@types/express": "^4.17.23", 28 "@types/node": "^22.18.0", 29 "@types/supertest": "^6.0.3", 30 "@vitest/coverage-v8": "^1.6.0", 31 "@vitest/ui": "^1.6.0", 32 "eslint": "^9.34.0", 33 "eslint-config-prettier": "^10.1.8", 34 "eslint-plugin-import": "^2.32.0", 35 "prettier": "^3.6.2", 36 "supertest": "^7.1.4", 37 "tsx": "^4.20.5", 38 "typescript": "^5.9.2", 39 "typescript-eslint": "^8.42.0", 40 "vitest": "^1.6.0" 41 }, 42 "dependencies": { 43 "@atproto/api": "^0.13.35", 44 "@atproto/bsky": "^0.0.101", 45 "@atproto/lexicon": "^0.4.14", 46 "@atproto/ozone": "^0.1.140", 47 "@atproto/repo": "^0.6.5", 48 "@atproto/xrpc-server": "^0.7.19", 49 "@clavata/sdk": "^0.3.0", 50 "@skyware/bot": "^0.3.12", 51 "@skyware/jetstream": "^0.2.5", 52 "@skyware/labeler": "^0.1.13", 53 "bottleneck": "^2.19.5", 54 "dotenv": "^16.6.1", 55 "express": "^4.21.2", 56 "franc": "^6.2.0", 57 "husky": "^9.1.7", 58 "lint-staged": "^15.5.2", 59 "p-ratelimit": "^1.0.1", 60 "pino": "^9.9.0", 61 "pino-pretty": "^13.1.1", 62 "prom-client": "^15.1.3", 63 "redis": "^4.7.0", 64 "undici": "^7.15.0" 65 }, 66 "trustedDependencies": [ 67 "protobufjs" 68 ] 69}