{"_id":"@anyme/anymejs","_rev":"10-bbe90567b20c7bf9fe11b139bd839bf5","name":"@anyme/anymejs","dist-tags":{"latest":"1.4.1"},"versions":{"1.0.0":{"name":"@anyme/anymejs","version":"1.0.0","keywords":["express","node","typescript"],"author":{"name":"656538470@qq.com"},"license":"MIT","_id":"@anyme/anymejs@1.0.0","maintainers":[{"name":"anyme","email":"656538470@qq.com"}],"homepage":"https://github.com/anyme1929/anymejs#readme","bugs":{"url":"https://github.com/anyme1929/anymejs/issues"},"dist":{"shasum":"9d644c0ada4a27520c49ab52b6832e4d30fb4e9e","tarball":"https://registry.npmjs.org/@anyme/anymejs/-/anymejs-1.0.0.tgz","fileCount":41,"integrity":"sha512-5xrbIJQl45KWdNXtP8dFNqz8pz00HEoKZz/Lj2d+QsdUVK097x34I3Oy9gDvN/hJQZ0iFeyUYtEks+5u7qMPGA==","signatures":[{"sig":"MEYCIQClwiBv1wOSu6AiKUjhJ+8loGl+Z1ht3M9DL1W/NyflbwIhAOLYesS0VSfiMtFAp3n68UUMxY2xHJl2YUr6WLdass4h","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":172598},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","gitHead":"8cdbd81b366fbab8214d2dcada1b6b9034718d91","scripts":{"dev":"ts-node-dev --respawn --transpile-only src/index.ts","build":"rollup -c","start":"node dist/esm/index.js","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"anyme","email":"656538470@qq.com"},"repository":{"url":"git+https://github.com/anyme1929/anymejs.git","type":"git"},"_npmVersion":"11.4.2","description":"anymejs","directories":{},"_nodeVersion":"22.18.0","_hasShrinkwrap":false,"packageManager":"pnpm@10.13.1","devDependencies":{"tslib":"^2.8.1","rollup":"^4.46.2","nodemon":"^3.1.10","ts-node":"^10.9.2","typescript":"^5.8.3","@types/node":"^24.1.0","ts-node-dev":"^2.0.0","@types/morgan":"^1.9.10","@types/express":"^5.0.3","tsconfig-paths":"^4.2.0","rollup-plugin-dts":"^6.2.1","@rollup/plugin-run":"^3.1.0","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@types/express-session":"^1.18.2","@rollup/plugin-commonjs":"^28.0.6","@rollup/plugin-typescript":"^12.1.4","@rollup/plugin-node-resolve":"^16.0.1","rollup-plugin-node-externals":"^8.0.1"},"peerDependencies":{"cors":"^2.8.5","helmet":"^8.1.0","morgan":"^1.10.1","mysql2":"^3.14.2","express":"^5.1.0","ioredis":"^5.6.1","typeorm":"^0.3.25","winston":"^3.17.0","fast-glob":"^3.3.3","inversify":"^7.7.0","express-session":"^1.18.2","reflect-metadata":"^0.2.2","@godaddy/terminus":"^4.12.1","routing-controllers":"^0.11.2","express-error-handler":"^1.1.0","winston-daily-rotate-file":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anymejs_1.0.0_1754730055574_0.005786745362611478","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@anyme/anymejs","version":"1.0.1","keywords":["express","node","typescript","mysql","redis","routing-controllers","typeorm","inversify"],"author":{"name":"656538470@qq.com"},"license":"MIT","_id":"@anyme/anymejs@1.0.1","maintainers":[{"name":"anyme","email":"656538470@qq.com"}],"homepage":"https://github.com/anyme1929/anymejs#readme","bugs":{"url":"https://github.com/anyme1929/anymejs/issues"},"dist":{"shasum":"b1f6276e1a9b5bb5b73d48908d45a6ddd11c2b1b","tarball":"https://registry.npmjs.org/@anyme/anymejs/-/anymejs-1.0.1.tgz","fileCount":44,"integrity":"sha512-SgGr3QMMkkbgvwweBF5vdysdXFgGyKjoQxEUgGV76a/RZQjY10apQW3Kr+MQqTbf0v3/MviIutAsCSg7hgUDBQ==","signatures":[{"sig":"MEUCIQCGBPMyxsO7DjXftvSkBPuUzkHPVl2LkTtAUmeM+05JDwIgS+IYlnUrLxpsOHSWk3fOlx8gzt8Fws47W69T6O9COys=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":198686},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","gitHead":"f7dc98bd07ef9416575a522398e75c86cba44b87","scripts":{"dev":"ts-node-dev --respawn --transpile-only src/index.ts","build":"rollup -c","madge":"madge --circular --extensions ts ./src","start":"node dist/esm/index.js","publish":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"anyme","email":"656538470@qq.com"},"repository":{"url":"git+https://github.com/anyme1929/anymejs.git","type":"git"},"_npmVersion":"11.4.2","description":"anymejs","directories":{},"_nodeVersion":"22.18.0","dependencies":{"winston":"^3.17.0","fast-glob":"^3.3.3","@godaddy/terminus":"^4.12.1","winston-daily-rotate-file":"^5.0.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.13.1","devDependencies":{"madge":"^8.0.0","tslib":"^2.8.1","rollup":"^4.46.2","ts-node":"^10.9.2","typescript":"^5.8.3","@types/node":"^24.2.1","ts-node-dev":"^2.0.0","@types/morgan":"^1.9.10","@types/express":"^5.0.3","tsconfig-paths":"^4.2.0","rollup-plugin-dts":"^6.2.1","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@types/express-session":"^1.18.2","@rollup/plugin-commonjs":"^28.0.6","@rollup/plugin-typescript":"^12.1.4","@rollup/plugin-node-resolve":"^16.0.1","rollup-plugin-node-externals":"^8.0.1"},"peerDependencies":{"cors":"^2.8.5","helmet":"^8.1.0","morgan":"^1.10.1","mysql2":"^3.14.2","express":"^5.1.0","ioredis":"^5.6.1","typeorm":"^0.3.25","inversify":"^7.7.0","express-session":"^1.18.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.11.2","express-error-handler":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/anymejs_1.0.1_1754966754126_0.027000223019789882","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@anyme/anymejs","version":"1.1.0","keywords":["express","node","typescript","mysql","redis","routing-controllers","typeorm","inversify"],"author":{"name":"656538470@qq.com"},"license":"MIT","_id":"@anyme/anymejs@1.1.0","maintainers":[{"name":"anyme","email":"656538470@qq.com"}],"homepage":"https://github.com/anyme1929/anymejs#readme","bugs":{"url":"https://github.com/anyme1929/anymejs/issues"},"dist":{"shasum":"dbb320861bb3da823465a33b5a53f71874f8438a","tarball":"https://registry.npmjs.org/@anyme/anymejs/-/anymejs-1.1.0.tgz","fileCount":11,"integrity":"sha512-20HW0bfxi+3xYn325gFwwLvSxXk1GaIGIfOAZeQDdX0oXXappmARp0i9wKK3uKBB6/0AtG/R/Spa4dftERniJw==","signatures":[{"sig":"MEQCIEqU4aGVqism8wZlrVDJ6mWBlJwCM4coiDT8MNjnV3XbAiB7glT5JbAVkgVltzbLrgbqagTUMd0GBX1dMoNs5FV0nQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":193938},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","gitHead":"bff1f317d540d91dbe1e3144067b0ae2c535eddf","scripts":{"dev":"ts-node-dev --respawn --transpile-only src/index.ts","build":"rollup -c","madge":"madge --circular --extensions ts ./src","start":"node dist/esm/index.js","release:major":"npm version major && npm publish","release:minor":"npm version minor && npm publish","release:patch":"npm version patch && npm publish","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"anyme","email":"656538470@qq.com"},"repository":{"url":"git+https://github.com/anyme1929/anymejs.git","type":"git"},"_npmVersion":"11.4.2","description":"anymejs","directories":{},"_nodeVersion":"22.18.0","dependencies":{"winston":"^3.17.0","fast-glob":"^3.3.3","@godaddy/terminus":"^4.12.1","winston-daily-rotate-file":"^5.0.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.13.1","devDependencies":{"madge":"^8.0.0","tslib":"^2.8.1","rollup":"^4.46.2","ts-node":"^10.9.2","typescript":"^5.8.3","@types/node":"^24.2.1","ts-node-dev":"^2.0.0","@types/morgan":"^1.9.10","@types/express":"^5.0.3","tsconfig-paths":"^4.2.0","rollup-plugin-dts":"^6.2.1","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@types/express-session":"^1.18.2","@rollup/plugin-commonjs":"^28.0.6","@rollup/plugin-typescript":"^12.1.4","@rollup/plugin-node-resolve":"^16.0.1","rollup-plugin-node-externals":"^8.0.1"},"peerDependencies":{"cors":"^2.8.5","helmet":"^8.1.0","morgan":"^1.10.1","mysql2":"^3.14.2","express":"^5.1.0","ioredis":"^5.6.1","typeorm":"^0.3.25","inversify":"^7.7.0","express-session":"^1.18.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.11.2","express-error-handler":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/anymejs_1.1.0_1754969335915_0.07571403620448391","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@anyme/anymejs","version":"1.1.1","keywords":["express","node","typescript","mysql","redis","routing-controllers","typeorm","inversify"],"author":{"name":"656538470@qq.com"},"license":"MIT","_id":"@anyme/anymejs@1.1.1","maintainers":[{"name":"anyme","email":"656538470@qq.com"}],"homepage":"https://github.com/anyme1929/anymejs#readme","bugs":{"url":"https://github.com/anyme1929/anymejs/issues"},"dist":{"shasum":"bd43e630c6d4632870ef8ee6b9a3b5181ddc3a32","tarball":"https://registry.npmjs.org/@anyme/anymejs/-/anymejs-1.1.1.tgz","fileCount":11,"integrity":"sha512-S6hUuX1AUWTy7NK1VfVVdneOqeJM44Or802UBFBWZcs1e4lCBILujzYdWkk+DU4KJy4Opmsw21rNOKnyCMRI/g==","signatures":[{"sig":"MEUCIQCox3wk+rw1ekYVH5yPQcs+WgraTV61I931OV+yWzJuagIgO9rX69/VHs9vSiJ6/u0Ia85lAOpBqfqQikyLvsCtRJY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":196719},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","gitHead":"d697797dff907f8908524d529717d99e2536b1db","scripts":{"dev":"ts-node-dev --respawn --transpile-only src/index.ts","build":"rollup -c","madge":"madge --circular --extensions ts ./src","start":"node dist/esm/index.js","release:major":"npm version major && npm publish","release:minor":"npm version minor && npm publish","release:patch":"npm version patch && npm publish","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"anyme","email":"656538470@qq.com"},"repository":{"url":"git+https://github.com/anyme1929/anymejs.git","type":"git"},"_npmVersion":"11.4.2","description":"anymejs","directories":{},"_nodeVersion":"22.18.0","dependencies":{"winston":"^3.17.0","fast-glob":"^3.3.3","@godaddy/terminus":"^4.12.1","winston-daily-rotate-file":"^5.0.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.13.1","devDependencies":{"madge":"^8.0.0","tslib":"^2.8.1","rollup":"^4.46.2","ts-node":"^10.9.2","typescript":"^5.8.3","@types/node":"^24.2.1","ts-node-dev":"^2.0.0","@types/morgan":"^1.9.10","@types/express":"^5.0.3","tsconfig-paths":"^4.2.0","rollup-plugin-dts":"^6.2.1","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@types/express-session":"^1.18.2","@rollup/plugin-commonjs":"^28.0.6","@rollup/plugin-typescript":"^12.1.4","@rollup/plugin-node-resolve":"^16.0.1","rollup-plugin-node-externals":"^8.0.1"},"peerDependencies":{"cors":"^2.8.5","helmet":"^8.1.0","morgan":"^1.10.1","mysql2":"^3.14.2","express":"^5.1.0","ioredis":"^5.6.1","typeorm":"^0.3.25","inversify":"^7.7.0","express-session":"^1.18.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.11.2","express-error-handler":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/anymejs_1.1.1_1754971231810_0.49175045098755255","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@anyme/anymejs","version":"1.3.0","keywords":["express","node","typescript","mysql","redis","routing-controllers","typeorm","inversify"],"author":{"name":"656538470@qq.com"},"license":"MIT","_id":"@anyme/anymejs@1.3.0","maintainers":[{"name":"anyme","email":"656538470@qq.com"}],"homepage":"https://github.com/anyme1929/anymejs#readme","bugs":{"url":"https://github.com/anyme1929/anymejs/issues"},"dist":{"shasum":"f6c24dc4f05e4c707772d48e654030dd8bb1dd0d","tarball":"https://registry.npmjs.org/@anyme/anymejs/-/anymejs-1.3.0.tgz","fileCount":11,"integrity":"sha512-sAv8nWhL3Z1QWO54HwQb+MfQ3lQXxCLhC1Zec4OvUjhZRnf3G8LE52eKaZFfzSVKq9pdf3MUSZtU5w5p8xD3ig==","signatures":[{"sig":"MEUCIQDHgqdw3lZRuFl2ikfxvm8b5MtCmS0oRl/mZf94K00f3wIgYxG0Qr1i12eDanz3VHJo9fa8oFJjLvVeDxD5wv254uw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":204006},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","gitHead":"dfd7becfc56a34c12580f73f1e1ebd9fdfe554a7","scripts":{"dev":"ts-node-dev --respawn --transpile-only src/index.ts","build":"rollup -c","madge":"madge --circular --extensions ts ./src","start":"node dist/esm/index.js","release:major":"npm version major && npm publish","release:minor":"npm version minor && npm publish","release:patch":"npm version patch && npm publish","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"anyme","email":"656538470@qq.com"},"repository":{"url":"git+https://github.com/anyme1929/anymejs.git","type":"git"},"_npmVersion":"11.4.2","description":"anymejs","directories":{},"_nodeVersion":"22.18.0","dependencies":{"winston":"^3.17.0","fast-glob":"^3.3.3","@godaddy/terminus":"^4.12.1","winston-daily-rotate-file":"^5.0.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.13.1","devDependencies":{"madge":"^8.0.0","tslib":"^2.8.1","rollup":"^4.46.2","ts-node":"^10.9.2","typescript":"^5.8.3","@types/node":"^24.2.1","ts-node-dev":"^2.0.0","@types/morgan":"^1.9.10","@types/express":"^5.0.3","tsconfig-paths":"^4.2.0","rollup-plugin-dts":"^6.2.1","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@types/express-session":"^1.18.2","@rollup/plugin-commonjs":"^28.0.6","@rollup/plugin-typescript":"^12.1.4","@rollup/plugin-node-resolve":"^16.0.1","rollup-plugin-node-externals":"^8.0.1"},"peerDependencies":{"cors":"^2.8.5","helmet":"^8.1.0","morgan":"^1.10.1","mysql2":"^3.14.2","express":"^5.1.0","ioredis":"^5.6.1","typeorm":"^0.3.25","inversify":"^7.7.0","express-session":"^1.18.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.11.2","express-error-handler":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/anymejs_1.3.0_1754999995183_0.5615611202254716","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@anyme/anymejs","version":"1.3.1","keywords":["express","node","typescript","mysql","redis","routing-controllers","typeorm","inversify"],"author":{"name":"656538470@qq.com"},"license":"MIT","_id":"@anyme/anymejs@1.3.1","maintainers":[{"name":"anyme","email":"656538470@qq.com"}],"homepage":"https://github.com/anyme1929/anymejs#readme","bugs":{"url":"https://github.com/anyme1929/anymejs/issues"},"dist":{"shasum":"a8e76d48da7a9f1ec1c2cf4ef2d50a37c0fde867","tarball":"https://registry.npmjs.org/@anyme/anymejs/-/anymejs-1.3.1.tgz","fileCount":11,"integrity":"sha512-JzhbXnGFLqz4ojCfX/7NMTqjvVEi6mN3OwHxufLmzENmMZiwa2ofFrLr4lI099sqDm4/0GE07C6Ees3QEL2Odg==","signatures":[{"sig":"MEYCIQCRh7GMqrc33ngQbJT9FJn6QZF3DeiUVPNOC0QLtvQFnwIhAP0p/8z81ArSjWFzyjujQuOrXJUbAdO7pi2hejshcjdN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":97981},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","gitHead":"a1f8ffca48dcbbc1673e3dd3688a8e617701f3ea","scripts":{"dev":"ts-node-dev --respawn --transpile-only src/index.ts","lint":"eslint src/**/*.ts","build":"rollup -c","madge":"madge --circular --extensions ts ./src","start":"node dist/esm/index.js","lint:fix":"eslint --fix src/**/*.ts","release:major":"npm version major && npm publish","release:minor":"npm version minor && npm publish","release:patch":"npm version patch && npm publish","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"anyme","email":"656538470@qq.com"},"repository":{"url":"git+https://github.com/anyme1929/anymejs.git","type":"git"},"_npmVersion":"11.4.2","description":"anymejs","directories":{},"_nodeVersion":"22.18.0","dependencies":{"winston":"^3.17.0","fast-glob":"^3.3.3","@godaddy/terminus":"^4.12.1","winston-daily-rotate-file":"^5.0.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.13.1","devDependencies":{"madge":"^8.0.0","tslib":"^2.8.1","eslint":"^9.33.0","rollup":"^4.46.2","ts-node":"^10.9.2","@eslint/js":"^9.33.0","typescript":"^5.8.3","@types/node":"^24.2.1","ts-node-dev":"^2.0.0","@types/morgan":"^1.9.10","@types/express":"^5.0.3","tsconfig-paths":"^4.2.0","rollup-plugin-dts":"^6.2.1","typescript-eslint":"^8.39.1","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@types/express-session":"^1.18.2","@rollup/plugin-commonjs":"^28.0.6","@rollup/plugin-typescript":"^12.1.4","@rollup/plugin-node-resolve":"^16.0.1","rollup-plugin-node-externals":"^8.0.1"},"peerDependencies":{"cors":"^2.8.5","helmet":"^8.1.0","morgan":"^1.10.1","mysql2":"^3.14.2","express":"^5.1.0","ioredis":"^5.6.1","typeorm":"^0.3.25","inversify":"^7.7.0","express-session":"^1.18.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.11.2","express-error-handler":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/anymejs_1.3.1_1755066840698_0.2286847843598121","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"@anyme/anymejs","version":"1.3.2","keywords":["express","node","typescript","mysql","redis","routing-controllers","typeorm","inversify"],"author":{"name":"656538470@qq.com"},"license":"MIT","_id":"@anyme/anymejs@1.3.2","maintainers":[{"name":"anyme","email":"656538470@qq.com"}],"homepage":"https://github.com/anyme1929/anymejs#readme","bugs":{"url":"https://github.com/anyme1929/anymejs/issues"},"dist":{"shasum":"d30b40919c3c5d98134f5f3853a5d474e6f5e35f","tarball":"https://registry.npmjs.org/@anyme/anymejs/-/anymejs-1.3.2.tgz","fileCount":11,"integrity":"sha512-kisuL3DjxbmPQw5t3xCbc6bgT+Y+N3he2mWmMNMMK14Z9Wr7bQ2xxCw22Vn3lbhuKxJJoxnnW/2h6MxScJ7vaQ==","signatures":[{"sig":"MEUCIGXUek4tLqAqONejxAYPN3PbCH5jo/4lvcCDZ8/k1D2PAiEAnmA/WhHZViZQbFOlxQpipW5rG9GhzebvdF/mbPt5sTQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":97800},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","gitHead":"cc4017084ebbace6a672d516e8128fdae82252e9","scripts":{"dev":"ts-node-dev --respawn --transpile-only src/index.ts","lint":"eslint src/**/*.ts","build":"rollup -c","madge":"madge --circular --extensions ts ./src","start":"node dist/esm/index.js","lint:fix":"eslint --fix src/**/*.ts","release:major":"npm version major && npm publish","release:minor":"npm version minor && npm publish","release:patch":"npm version patch && npm publish","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"anyme","email":"656538470@qq.com"},"repository":{"url":"git+https://github.com/anyme1929/anymejs.git","type":"git"},"_npmVersion":"11.4.2","description":"anymejs","directories":{},"_nodeVersion":"22.18.0","dependencies":{"winston":"^3.17.0","fast-glob":"^3.3.3","@godaddy/terminus":"^4.12.1","winston-daily-rotate-file":"^5.0.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.13.1","devDependencies":{"madge":"^8.0.0","tslib":"^2.8.1","eslint":"^9.33.0","rollup":"^4.46.2","ts-node":"^10.9.2","@eslint/js":"^9.33.0","typescript":"^5.8.3","@types/node":"^24.2.1","ts-node-dev":"^2.0.0","@types/morgan":"^1.9.10","@types/express":"^5.0.3","tsconfig-paths":"^4.2.0","rollup-plugin-dts":"^6.2.1","typescript-eslint":"^8.39.1","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@types/express-session":"^1.18.2","@rollup/plugin-commonjs":"^28.0.6","@rollup/plugin-typescript":"^12.1.4","@rollup/plugin-node-resolve":"^16.0.1","rollup-plugin-node-externals":"^8.0.1"},"peerDependencies":{"cors":"^2.8.5","helmet":"^8.1.0","morgan":"^1.10.1","mysql2":"^3.14.2","express":"^5.1.0","ioredis":"^5.6.1","typeorm":"^0.3.25","inversify":"^7.7.0","express-session":"^1.18.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.11.2","express-error-handler":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/anymejs_1.3.2_1755067193003_0.9941985103980269","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"@anyme/anymejs","version":"1.3.3","keywords":["express","node","typescript","mysql","redis","routing-controllers","typeorm","inversify"],"author":{"name":"656538470@qq.com"},"license":"MIT","_id":"@anyme/anymejs@1.3.3","maintainers":[{"name":"anyme","email":"656538470@qq.com"}],"homepage":"https://github.com/anyme1929/anymejs#readme","bugs":{"url":"https://github.com/anyme1929/anymejs/issues"},"dist":{"shasum":"10902a640cb98ba21d7df7766c0a144452d251db","tarball":"https://registry.npmjs.org/@anyme/anymejs/-/anymejs-1.3.3.tgz","fileCount":11,"integrity":"sha512-JiIAXjQbkKPN7KrBZrVE5pv59bGPhTxP3xSmZOjzEtQ1N/MhnwvaqoP8ZZYKJAt0reNRmXyXqwgkmmDOV4MRRQ==","signatures":[{"sig":"MEUCICQKBCwi8gCi10OgexgyJssZ3gZD4GB/dcqu0KJm5BfyAiEA7uai8E72Yj030vTkddPIwN/N1YgmXL76uIo+PSm9bYE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1133996},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","gitHead":"22730ecb3059063721d0a35b0636b71ece3ac289","scripts":{"dev":"ts-node-dev --respawn --transpile-only src/index.ts","lint":"eslint src/**/*.ts","build":"rollup -c","madge":"madge --circular --extensions ts ./src","start":"node dist/esm/index.js","lint:fix":"eslint --fix src/**/*.ts","release:major":"npm version major && npm publish","release:minor":"npm version minor && npm publish","release:patch":"npm version patch && npm publish","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"anyme","email":"656538470@qq.com"},"repository":{"url":"git+https://github.com/anyme1929/anymejs.git","type":"git"},"_npmVersion":"11.4.2","description":"anymejs","directories":{},"_nodeVersion":"22.18.0","dependencies":{"morgan":"^1.10.1","fast-glob":"^3.3.3","@godaddy/terminus":"^4.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.13.1","devDependencies":{"madge":"^8.0.0","tslib":"^2.8.1","eslint":"^9.33.0","rollup":"^4.46.2","ts-node":"^10.9.2","@eslint/js":"^9.33.0","typescript":"^5.8.3","@types/node":"^24.2.1","ts-node-dev":"^2.0.0","@types/morgan":"^1.9.10","@types/express":"^5.0.3","rollup-plugin-dts":"^6.2.1","typescript-eslint":"^8.39.1","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@types/express-session":"^1.18.2","@rollup/plugin-commonjs":"^28.0.6","@rollup/plugin-typescript":"^12.1.4","@rollup/plugin-node-resolve":"^16.0.1","rollup-plugin-node-externals":"^8.0.1"},"peerDependencies":{"cors":"^2.8.5","mysql2":"^3.14.2","express":"^5.1.0","ioredis":"^5.6.1","typeorm":"^0.3.25","winston":"^3.17.0","inversify":"^7.7.0","express-session":"^1.18.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.11.2","express-error-handler":"^1.1.0","winston-daily-rotate-file":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anymejs_1.3.3_1755080184472_0.9806322971585808","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@anyme/anymejs","version":"1.4.0","keywords":["express","node","typescript","mysql","redis","routing-controllers","typeorm","inversify"],"author":{"name":"656538470@qq.com"},"license":"MIT","_id":"@anyme/anymejs@1.4.0","maintainers":[{"name":"anyme","email":"656538470@qq.com"}],"homepage":"https://github.com/anyme1929/anymejs#readme","bugs":{"url":"https://github.com/anyme1929/anymejs/issues"},"dist":{"shasum":"b1a69dfeebac008e526c26012f6e3cfc5fc9c256","tarball":"https://registry.npmjs.org/@anyme/anymejs/-/anymejs-1.4.0.tgz","fileCount":9,"integrity":"sha512-ti0r6PET0C9hXlfKAStWsAWEBu8E1obmRDPO0IqFDMQltsJ5tEG9n+bf3HlaKObIlBzBeG0GYihgXTrUQnOBAg==","signatures":[{"sig":"MEYCIQDHr3hoMK1IqhBSXwln1Z4OBflyzUbXkiUY1uGtAhst2AIhAJ8U2rxKPU6YdgcZ6WUh4PnL1a8PxG71T5GlxdQbADwA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1342544},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","gitHead":"f43265be5bf1911cffbc818316b1e227405b013c","scripts":{"dev":"ts-node-dev --respawn --transpile-only src/index.ts","lint":"eslint src/**/*.ts","build":"rollup -c","madge":"madge --circular --extensions ts ./src","start":"node dist/esm/index.js","lint:fix":"eslint --fix src/**/*.ts","release:major":"npm version major && npm publish","release:minor":"npm version minor && npm publish","release:patch":"npm version patch && npm publish","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"anyme","email":"656538470@qq.com"},"repository":{"url":"git+https://github.com/anyme1929/anymejs.git","type":"git"},"_npmVersion":"11.4.2","description":"anymejs","directories":{},"_nodeVersion":"22.18.0","dependencies":{"morgan":"^1.10.1","fast-glob":"^3.3.3","@godaddy/terminus":"^4.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.13.1","devDependencies":{"madge":"^8.0.0","tslib":"^2.8.1","eslint":"^9.33.0","rollup":"^4.46.2","ts-node":"^10.9.2","@eslint/js":"^9.33.0","typescript":"^5.8.3","@types/node":"^24.2.1","ts-node-dev":"^2.0.0","@types/morgan":"^1.9.10","@types/express":"^5.0.3","rollup-plugin-dts":"^6.2.1","typescript-eslint":"^8.39.1","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@types/express-session":"^1.18.2","@rollup/plugin-commonjs":"^28.0.6","@rollup/plugin-typescript":"^12.1.4","rollup-plugin-typescript2":"^0.36.0","@rollup/plugin-node-resolve":"^16.0.1","rollup-plugin-node-externals":"^8.0.1"},"peerDependencies":{"cors":"^2.8.5","mysql2":"^3.14.2","express":"^5.1.0","ioredis":"^5.6.1","typeorm":"^0.3.25","winston":"^3.17.0","inversify":"^7.7.0","express-session":"^1.18.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.11.2","express-error-handler":"^1.1.0","winston-daily-rotate-file":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/anymejs_1.4.0_1755336754819_0.2079079467866627","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"@anyme/anymejs","version":"1.4.1","description":"anymejs","main":"dist/cjs/index.js","module":"dist/esm/index.js","types":"dist/types/index.d.ts","scripts":{"watch":"ts-node-dev --respawn --transpile-only ./index.ts","build":"rollup -c","start":"node dist/cjs/index.js","madge":"madge --circular --extensions ts ./src","test":"jest","lint":"eslint src/**/*.ts","lint:fix":"eslint --fix src/**/*.ts","prepublishOnly":"pnpm run build","release:patch":"npm version patch && npm publish","release:minor":"npm version minor && npm publish","release:major":"npm version major && npm publish"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"license":"MIT","keywords":["express","node","typescript","mysql","redis","routing-controllers","typeorm","inversify"],"author":{"name":"656538470@qq.com"},"repository":{"type":"git","url":"git+https://github.com/anyme1929/anymejs.git"},"packageManager":"pnpm@10.13.1","dependencies":{"@anyme/cache":"^0.1.3","@godaddy/terminus":"^4.12.1","fast-glob":"^3.3.3"},"peerDependencies":{"@anyme/session-ioredis":"^0.0.1","@anyme/socket":"^0.1.12","@anyme/sse":"^0.1.11","cors":"^2.8.5","express":"^5.1.0","express-error-handler":"^1.1.0","express-rate-limit":"^8.0.1","express-session":"^1.18.2","express-slow-down":"^3.0.0","inversify":"^7.7.0","ioredis":"^5.6.1","mysql2":"^3.14.2","rate-limit-redis":"^4.2.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.11.2","socket.io":"^4.8.1","typeorm":"^0.3.25","winston":"^3.17.0","winston-daily-rotate-file":"^5.0.0"},"optionalDependencies":{"@socket.io/cluster-adapter":"^0.2.2","@socket.io/redis-adapter":"^8.3.0","@socket.io/sticky":"^1.0.4"},"devDependencies":{"@eslint/js":"^9.35.0","@rollup/plugin-commonjs":"^28.0.6","@rollup/plugin-json":"^6.1.0","@rollup/plugin-node-resolve":"^16.0.1","@rollup/plugin-terser":"^0.4.4","@rollup/plugin-typescript":"^12.1.4","@types/express":"^5.0.3","@types/express-session":"^1.18.2","@types/node":"^24.3.1","eslint":"^9.35.0","madge":"^8.0.0","rollup":"^4.50.1","rollup-plugin-dts":"^6.2.3","rollup-plugin-node-externals":"^8.1.1","rollup-plugin-typescript2":"^0.36.0","ts-jest":"^29.4.1","ts-node":"^10.9.2","ts-node-dev":"^2.0.0","tslib":"^2.8.1","typescript":"^5.9.2","typescript-eslint":"^8.43.0"},"_id":"@anyme/anymejs@1.4.1","gitHead":"df3cd1f71ffdeac23bfe70a5a0682f546ed2933b","bugs":{"url":"https://github.com/anyme1929/anymejs/issues"},"homepage":"https://github.com/anyme1929/anymejs#readme","_nodeVersion":"22.18.0","_npmVersion":"11.4.2","dist":{"integrity":"sha512-EmoBGlVkv5CQ8yFuBmKA6oiJC6DM/+dWB3poAWgWFMsqyS69EBx1kHA+JpyDUjfNpau+BS2+nn04yMFnTO8Kpg==","shasum":"a021801ccd89e09184bf4775b9e17033a417f593","tarball":"https://registry.npmjs.org/@anyme/anymejs/-/anymejs-1.4.1.tgz","fileCount":600,"unpackedSize":1753977,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCID1e84wc8qHPYzLZ2V1U/qExB1GsQFtxVZPwogZ6MMqLAiAeXkN9DwVmoNrMfVZay2D/EV6JAR7baJ2f8tJr1+aFig=="}]},"_npmUser":{"name":"anyme","email":"656538470@qq.com"},"directories":{},"maintainers":[{"name":"anyme","email":"656538470@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/anymejs_1.4.1_1757425950032_0.40263808949665125"},"_hasShrinkwrap":false}},"time":{"created":"2025-08-09T09:00:55.439Z","modified":"2025-09-09T13:52:30.434Z","1.0.0":"2025-08-09T09:00:55.785Z","1.0.1":"2025-08-12T02:45:54.313Z","1.1.0":"2025-08-12T03:28:56.073Z","1.1.1":"2025-08-12T04:00:31.992Z","1.3.0":"2025-08-12T11:59:55.460Z","1.3.1":"2025-08-13T06:34:00.921Z","1.3.2":"2025-08-13T06:39:53.178Z","1.3.3":"2025-08-13T10:16:24.673Z","1.4.0":"2025-08-16T09:32:35.039Z","1.4.1":"2025-09-09T13:52:30.242Z"},"bugs":{"url":"https://github.com/anyme1929/anymejs/issues"},"author":{"name":"656538470@qq.com"},"license":"MIT","homepage":"https://github.com/anyme1929/anymejs#readme","keywords":["express","node","typescript","mysql","redis","routing-controllers","typeorm","inversify"],"repository":{"type":"git","url":"git+https://github.com/anyme1929/anymejs.git"},"description":"anymejs","maintainers":[{"name":"anyme","email":"656538470@qq.com"}],"readme":"# AnyMe.js\r\n\r\nAnyMe.js 是一个基于 Express.js 和 TypeScript 构建的现代化 Node.js Web 框架，集成了数据库、Redis、依赖注入等多种功能，旨在帮助开发者快速构建可扩展的 Web 应用。\r\n\r\n## 特性\r\n\r\n- 🚀 基于 Express.js 构建，兼容 Express 生态\r\n- 🎯 使用 TypeScript 编写，提供完整的类型安全\r\n- 💉 内置 InversifyJS 依赖注入容器\r\n- 🗃️ 支持 TypeORM 数据库操作\r\n- 🔥 集成 Redis 支持\r\n- 🛡️ 内置 Helmet、Morgan 等安全和日志中间件\r\n- 🧠 支持 Session 管理（内存/Redis）\r\n- 🔄 使用 Rollup 构建，支持 ESM 和 CommonJS 格式\r\n- 🌍 支持环境变量配置\r\n- 📦 开箱即用的项目结构\r\n\r\n## 快速开始\r\n\r\n### 安装\r\n\r\n```bash\r\n# 使用 npm\r\nnpm install @anyme/anymejs\r\n\r\n# 使用 pnpm\r\npnpm add @anyme/anymejs\r\n\r\n# 使用 yarn\r\nyarn add @anyme/anymejs\r\n```\r\n\r\n### 基本使用\r\n\r\n```ts\r\n//index.ts\r\nimport express from \"express\";\r\nimport { createApp } from \"@anyme/anymejs\";\r\n\r\ncreateApp(express()).then((app) => {\r\n  app.bootstrap();\r\n});\r\n```\r\n\r\n### 配置\r\n\r\n#### 项目支持通过环境变量或 .env 文件进行配置。默认配置如下：\r\n\r\n```\r\n# 服务器配置\r\nPORT=3000\r\nAPI_PREFIX=\"\"\r\n\r\n# 日志配置\r\nLOG_LEVEL=\"info\"\r\n\r\n# 数据库配置\r\nDB_HOST=localhost\r\nDB_PORT=3306\r\nDB_USER=root\r\nDB_PASSWORD=\"\"\r\nDB_DATABASE=\"\"\r\n\r\n# Redis 配置\r\nREDIS_MASTER_NAME=\"mymaster\"\r\nREDIS_USERNAME=\"\"\r\nREDIS_HOST=localhost\r\nREDIS_PORT=6379\r\nREDIS_PASSWORD=\"\"\r\nREDIS_DATABASE=0\r\n\r\n# Session 配置\r\nSESSION_SECRET=\"session\"\r\nSESSION_PREFIX=\"\"\r\n\r\n# HTTPS 配置\r\nHTTPS_PORT=443\r\nHTTPS_KEY=\"path/to/key.pem\"\r\nHTTPS_CERT=\"path/to/cert.pem\"\r\n```\r\n\r\n#### 你也可以通过代码进行配置：\r\n\r\n```ts\r\n//config/default.config.ts\r\nimport { defineConfig } from \"@anyme/anymejs\";\r\nconst config = defineConfig({\r\n  port: 3000,\r\n  logger: {\r\n    level: \"info\",\r\n  },\r\n  db: {\r\n    enable: false,\r\n    client: {\r\n      type: \"mysql\",\r\n      host: \"localhost\",\r\n      port: 3306,\r\n      username: \"root\",\r\n      password: \"\",\r\n      database: \"\",\r\n      entities: [resolve(\"src/models/**/*{.ts,.js}\")],\r\n      migrations: [resolve(\"src/migrations/**/*{.ts,.js}\")],\r\n      poolSize: 5,\r\n      synchronize: false,\r\n      logging: process.env.NODE_ENV === \"development\",\r\n    },\r\n  },\r\n  redis: {\r\n    enable: false,\r\n    client: {\r\n      lazyConnect: true,\r\n    },\r\n  },\r\n  session: {\r\n    enable: true,\r\n    prefix: \"session:\",\r\n    type: \"memory\",\r\n    client: {\r\n      secret: \"session\",\r\n      resave: false,\r\n      saveUninitialized: false,\r\n      cookie: {\r\n        secure: false,\r\n        httpOnly: true,\r\n        maxAge: 1000 * 60 * 60,\r\n      },\r\n    },\r\n  },\r\n  router: {\r\n    cors: {\r\n      origin: \"*\",\r\n      methods: \"GET,POST,PUT,DELETE,OPTIONS\",\r\n      credentials: false,\r\n    },\r\n    routePrefix: \"\",\r\n    controllers: [resolve(\"src/controllers/**/*{.ts,.js}\")],\r\n    middlewares: [resolve(\"src/middlewares/**/*{.ts,.js}\")],\r\n    interceptors: [resolve(\"src/interceptors/**/*{.ts,.js}\")],\r\n  },\r\n  https: {\r\n    enable: false,\r\n    options: {\r\n      port: 443,\r\n      key: \"path/to/key.pem\",\r\n      cert: \"path/to/cert.pem\",\r\n    },\r\n  },\r\n});\r\n```\r\n\r\n#### 或者使用 JSON 格式，创建 config/default.config.json：\r\n\r\n```json\r\n{\r\n  \"port\": 3000\r\n}\r\n```\r\n\r\n#### 配置优先级：环境变量 > 项目配置 > 默认配置\r\n\r\n#### 配置文件按以下顺序加载：\r\n\r\n1. 环境特定配置（如 prod.config.ts、local.config.ts、test.config.ts）\r\n2. 默认配置（default.config.ts）\r\n\r\n### HTTPS 本地开发\r\n\r\n#### 使用 openssl 创建证书\r\n\r\n在./ssl 目录下 创建 openssl.cnf\r\n\r\n```bash\r\n[req]\r\ndefault_bits = 2048\r\nprompt = no\r\ndefault_md = sha256\r\ndistinguished_name = dn\r\nx509_extensions = v3_ca\r\n\r\n[dn]\r\nC = US\r\nST = State\r\nL = City\r\nO = Organization\r\nOU = Department\r\nCN = localhost\r\n\r\n[v3_ca]\r\nsubjectAltName = @alt_names\r\nkeyUsage = digitalSignature, keyEncipherment\r\nextendedKeyUsage = serverAuth\r\nbasicConstraints = CA:FALSE\r\n\r\n[alt_names]\r\nDNS.1 = localhost\r\nDNS.2 = 127.0.0.1\r\nIP.1 = 127.0.0.1\r\nIP.2 = ::1\r\n\r\n```\r\n\r\n生成证书和私钥\r\n\r\n```\r\n#生成私钥\r\n\r\nopenssl genrsa -out server.key 2048\r\n\r\n#使用配置文件生成自签名证书\r\n\r\nopenssl req -new -x509 -days 3650 -key server.key -out server.crt -config openssl.cnf\r\n```\r\n\r\n这将生成两个文件：\r\n\r\n- server.key：私钥文件\r\n\r\n- server.crt：证书文件（有效期 10 年）\r\n\r\nsse\r\nlocation /sse {\r\nproxy_pass http://localhost:3000;\r\nproxy_buffering off; # 禁用缓冲\r\nproxy_cache off; # 禁用缓存\r\nproxy_set_header Connection '';\r\nproxy_http_version 1.1;\r\nchunked_transfer_encoding off;\r\n}\r\n\r\n### 项目结构\r\n\r\n```\r\nsrc/\r\n├── config/          # 配置文件\r\n├── controllers/     # 控制器\r\n├── core/            # 核心模块\r\n├── middlewares/     # 中间件\r\n├── models/          # 数据模型\r\n├── services/        # 服务层\r\n├── types/           # 类型定义\r\n├── utils/           # 工具函数\r\n└── index.ts         # 入口文件\r\n```\r\n\r\n### 核心依赖\r\n\r\n- Express.js v5\r\n- InversifyJS v7\r\n- TypeORM v0.3\r\n- Redis (ioredis)\r\n- Socket.IO\r\n- TypeScript v5\r\n- express-sse sse 服务器推送\r\n- Routing-controllers 基于装饰器的路由\r\n- Routing-controllers-openapi 生成 OpenAPI 文档\r\n\r\n## 许可证\r\n\r\nMIT\r\n","readmeFilename":"README.md"}