A social knowledge tool for researchers built on ATProto
at main 5.4 kB view raw
1{ 2 "name": "semble", 3 "version": "1.0.0", 4 "description": "", 5 "main": "index.js", 6 "workspaces": [ 7 "src/types", 8 "src/webapp" 9 ], 10 "directories": { 11 "doc": "docs" 12 }, 13 "scripts": { 14 "build:webapp": "npm run build:types && npm run build --workspace=semble-webapp", 15 "build:types": "npm run build --workspace=@semble/types", 16 "dev:types": "npm run dev --workspace=@semble/types", 17 "type-check": "tsc --noEmit", 18 "start": "node dist/index.js", 19 "worker:feeds": "node dist/workers/feed-worker.js", 20 "worker:search": "node dist/workers/search-worker.js", 21 "test": "jest", 22 "test:unit": "jest --testPathIgnorePatterns='.integration.test.' --testPathIgnorePatterns='.e2e.test.'", 23 "test:integration": "jest --testPathPattern='.integration.test.'", 24 "test:integration:db": "jest --testPathPattern='.integration.test.' --testNamePattern='Drizzle'", 25 "test:integration:db:watch": "jest --watch --testPathPattern='.integration.test.' --testNamePattern='Drizzle'", 26 "test:integration:redis": "jest --testPathPattern='.integration.test.' --testNamePattern='BullMQ'", 27 "test:integration:redis:watch": "jest --watch --testPathPattern='.integration.test.' --testNamePattern='BullMQ'", 28 "test:e2e": "jest --testPathPattern='.e2e.test.' --testTimeout=300000", 29 "test:watch": "jest --watch", 30 "test:unit:watch": "jest --watch --testPathIgnorePatterns='.integration.test.' --testPathIgnorePatterns='.e2e.test.'", 31 "test:integration:watch": "jest --watch --testPathPattern='.integration.test.'", 32 "build": "tsup", 33 "build:watch": "tsc --watch", 34 "dev:app:inner": "dotenv -e .env.local -- concurrently -k -n TYPE,APP -c red,blue \"tsc --noEmit --watch\" \"tsup --watch --onSuccess='node dist/index.js'\"", 35 "dev:worker:feeds:inner": "dotenv -e .env.local -- concurrently -k -n WORKER -c green \"tsup --watch --onSuccess='node dist/workers/feed-worker.js'\"", 36 "dev:worker:search:inner": "dotenv -e .env.local -- concurrently -k -n WORKER -c yellow \"tsup --watch --onSuccess='node dist/workers/search-worker.js'\"", 37 "dev:mock": "USE_MOCK_PERSISTENCE=true USE_FAKE_PUBLISHERS=true USE_MOCK_AUTH=true USE_MOCK_VECTOR_DB=true npm run dev:app:inner", 38 "dev:mock:pub:auth": "USE_FAKE_PUBLISHERS=true USE_MOCK_AUTH=true npm run dev", 39 "dev": "bash ./scripts/dev-combined.sh", 40 "migrate": "node dist/scripts/migrate.js", 41 "lexgen": "lex gen-server ./src/modules/atproto/infrastructure/lexicon ./src/modules/atproto/infrastructure/lexicons/*", 42 "db:start": "docker run --name annos-postgres -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=postgres -e POSTGRES_DB=annotations -p 5432:5432 -d postgres:14", 43 "db:stop": "docker stop annos-postgres", 44 "db:remove": "docker rm annos-postgres", 45 "redis:start": "docker run --name annos-redis -p 6379:6379 -d redis:7-alpine", 46 "redis:stop": "docker stop annos-redis", 47 "redis:remove": "docker rm annos-redis", 48 "db:generate": "drizzle-kit generate --schema=./src/modules/**/*.sql.ts --out=./src/shared/infrastructure/database/migrations --dialect=postgresql", 49 "webapp:dev": "npm run build:types && cd src/webapp && npm run dev", 50 "webapp:extension:dev": "cd src/webapp && npm run dev:extension", 51 "webapp:build": "cd src/webapp && npm run build", 52 "webapp:start": "cd src/webapp && npm run start", 53 "webapp:storybook": "cd src/webapp && npm run storybook", 54 "format": "prettier --write .", 55 "format:check": "prettier --check .", 56 "lint": "eslint .", 57 "lint:fix": "eslint . --fix" 58 }, 59 "keywords": [], 60 "author": "", 61 "license": "ISC", 62 "dependencies": { 63 "@atproto/api": "^0.15.2", 64 "@atproto/common": "^0.4.10", 65 "@atproto/identity": "^0.4.7", 66 "@atproto/lexicon": "^0.4.10", 67 "@atproto/oauth-client-node": "^0.2.15", 68 "@atproto/sync": "^0.1.20", 69 "@atproto/syntax": "^0.4.0", 70 "@atproto/xrpc-server": "^0.7.15", 71 "@semble/types": "*", 72 "@upstash/vector": "^1.2.2", 73 "bullmq": "^5.56.8", 74 "cookie-parser": "^1.4.7", 75 "cors": "^2.8.5", 76 "dotenv": "^16.5.0", 77 "express": "^5.1.0", 78 "ioredis": "^5.6.1", 79 "jsonwebtoken": "^9.0.2", 80 "postgres": "^3.4.5", 81 "redlock": "^5.0.0-beta.2", 82 "uuid": "^11.1.0", 83 "zod": "^3.22.4" 84 }, 85 "devDependencies": { 86 "@atproto/lex-cli": "^0.8.0", 87 "@flydotio/dockerfile": "^0.7.10", 88 "@testcontainers/postgresql": "^11.0.3", 89 "@testcontainers/redis": "^11.4.0", 90 "@types/cookie-parser": "^1.4.9", 91 "@types/cors": "^2.8.18", 92 "@types/express": "^5.0.1", 93 "@types/ioredis": "^5.0.0", 94 "@types/jest": "^29.5.14", 95 "@types/jsdom": "^21.1.7", 96 "@types/jsonwebtoken": "^9.0.9", 97 "@types/pg": "^8.11.13", 98 "@types/supertest": "^6.0.3", 99 "@typescript-eslint/eslint-plugin": "^8.37.0", 100 "@typescript-eslint/parser": "^8.37.0", 101 "concurrently": "^9.1.2", 102 "dotenv-cli": "^8.0.0", 103 "drizzle-kit": "^0.31.1", 104 "drizzle-orm": "^0.43.1", 105 "eslint": "^9.31.0", 106 "eslint-config-prettier": "^10.1.5", 107 "eslint-plugin-prettier": "^5.5.1", 108 "eslint-plugin-storybook": "^9.1.2", 109 "jest": "^29.7.0", 110 "jsdom": "^26.1.0", 111 "nodemon": "^3.1.10", 112 "pg": "^8.14.1", 113 "playwright": "^1.40.0", 114 "prettier": "^3.6.2", 115 "supertest": "^7.1.0", 116 "testcontainers": "^11.0.3", 117 "ts-jest": "^29.3.2", 118 "tsconfig-paths": "^4.2.0", 119 "tsup": "^8.4.0", 120 "typescript": "^5.8.3" 121 } 122}