at main 4.6 kB view raw
1{ 2 "name": "skypod", 3 "private": true, 4 "version": "0.0.0", 5 "scripts": { 6 "dev": "npm run start:dev", 7 "lint": "wireit", 8 "types": "wireit", 9 "build": "wireit", 10 "docs": "wireit", 11 "test": "wireit", 12 "start:tests": "wireit", 13 "start:dev": "wireit", 14 "start:prod": "wireit" 15 }, 16 "type": "module", 17 "imports": { 18 "#common/*": "./src/common/*", 19 "#realm/*": "./src/realm/*", 20 "#client/*": "./src/client/*", 21 "#server/*": "./src/server/*", 22 "#skypod/*": "./src/skypod/*" 23 }, 24 "dependencies": { 25 "@mozilla/readability": "^0.6.0", 26 "@preact/signals": "^2.2.0", 27 "dexie": "^4.0.11", 28 "express": "^5.1.0", 29 "feedsmith": "^2.2.1", 30 "isomorphic-ws": "^5.0.0", 31 "jose": "^6.0.11", 32 "level": "^10.0.0", 33 "linkedom": "^0.18.12", 34 "nanoid": "^5.1.5", 35 "preact": "^10.26.9", 36 "simple-peer": "^9.11.1", 37 "tsx": "^4.19.2", 38 "ws": "^8.18.2", 39 "zod": "~3.25" 40 }, 41 "devDependencies": { 42 "@eslint/compat": "^1.3.0", 43 "@eslint/css": "~0.9.0", 44 "@eslint/js": "~9.29.0", 45 "@eslint/json": "^0.12.0", 46 "@eslint/markdown": "^6.5.0", 47 "@faker-js/faker": "^9.8.0", 48 "@jest/globals": "^30.0.0", 49 "@preact/preset-vite": "^2.10.1", 50 "@testing-library/jest-dom": "^6.6.3", 51 "@testing-library/preact": "^3.2.4", 52 "@types/confusing-browser-globals": "^1.0.3", 53 "@types/express": "^5.0.3", 54 "@types/jest": "^30.0.0", 55 "@types/level": "^6.0.3", 56 "@types/node": "^24.0.1", 57 "@types/simple-peer": "^9.11.8", 58 "@types/ws": "^8.18.1", 59 "confusing-browser-globals": "^1.0.11", 60 "eslint": "^9.28.0", 61 "eslint-config-prettier": "^10.1.5", 62 "eslint-plugin-prettier": "^5.5.0", 63 "eslint-plugin-react": "^7.37.5", 64 "eslint-plugin-react-hooks": "^5.2.0", 65 "eslint-plugin-tsdoc": "^0.4.0", 66 "glob-to-regexp": "^0.4.1", 67 "globals": "^16.2.0", 68 "identity-obj-proxy": "^3.0.0", 69 "indexeddbshim": "^16.0.0", 70 "jest": "^30.0.2", 71 "jest-environment-jsdom": "^30.0.0", 72 "jest-fixed-jsdom": "^0.0.9", 73 "jsdom": "^26.1.0", 74 "parse-gitignore": "^2.0.0", 75 "prettier": "^3.5.3", 76 "prettier-plugin-organize-imports": "^4.1.0", 77 "ts-jest": "^29.4.0", 78 "typescript": "^5.8.3", 79 "typescript-eslint": "^8.34.1", 80 "typescript-eslint-language-service": "^5.0.5", 81 "typescript-language-server": "^5.0.1", 82 "vite": "^6.3.5", 83 "vite-plugin-checker": "^0.9.3", 84 "vite-plugin-node-polyfills": "^0.23.0", 85 "webtorrent": "^2.6.8", 86 "wireit": "^0.14.12", 87 "zod-schema-faker": "^2.0.0-beta.5" 88 }, 89 "wireit": { 90 "build": { 91 "command": "vite build", 92 "files": [ 93 "src/client/**/*.{ts,tsx}", 94 "src/client/*.{ts,tsx}", 95 "src/common/**/*.ts", 96 "src/common/*.ts", 97 "!src/**/*.spec.{ts,tsx}" 98 ], 99 "output": [ 100 "./dist/**" 101 ] 102 }, 103 "lint": { 104 "command": "eslint --color --cache --cache-location .eslintcache .", 105 "files": [ 106 "src/**/*.{ts,tsx}", 107 "eslint.config.js", 108 ".eslintignore" 109 ], 110 "output": [] 111 }, 112 "test": { 113 "command": "jest --cache --cacheDirectory .jestcache", 114 "files": [ 115 "src/**/*.{ts,tsx}", 116 "jest.config.js", 117 "jest.setup.js" 118 ], 119 "output": [ 120 "coverage/**" 121 ] 122 }, 123 "types": { 124 "command": "tsc --build --pretty --noEmit", 125 "files": [ 126 "src/**/*.{ts,tsx}", 127 "tsconfig.json" 128 ], 129 "output": [ 130 "tsconfig.tsbuildinfo" 131 ] 132 }, 133 "docs": { 134 "command": "jsdoc -c jsdoc.json", 135 "files": [ 136 "src/**/*.{ts,tsx}", 137 "!src/**/*.spec.{ts,tsx}", 138 "jsdoc.json" 139 ], 140 "output": [ 141 "./docs/**" 142 ] 143 }, 144 "run:client": { 145 "service": true, 146 "command": "vite" 147 }, 148 "run:tests": { 149 "service": true, 150 "command": "jest --watch" 151 }, 152 "run:server": { 153 "service": true, 154 "command": "tsx --watch src/cmd/server.ts" 155 }, 156 "start:tests": { 157 "service": true, 158 "command": "echo 'starting test services' && sleep 100d", 159 "dependencies": [ 160 "run:tests" 161 ] 162 }, 163 "start:dev": { 164 "service": true, 165 "command": "echo 'starting dev services' && sleep 100d", 166 "dependencies": [ 167 "lint", 168 "types", 169 "run:client", 170 "run:server" 171 ] 172 }, 173 "start:prod": { 174 "service": true, 175 "command": "echo 'starting prod services' && sleep 100d", 176 "dependencies": [ 177 "build", 178 "run:server" 179 ] 180 } 181 } 182}