{"id":146882666,"number":"4.0.0","published_at":"2025-09-06T09:20:11.438Z","licenses":"MIT","integrity":"sha512-sme6P7K57yOFXN6F5BJ9q8kN4B+E29izQEzoVhB57M/l66s4wRPuGCJJvQXYwbt1tsT2HPssR2k6XOGzDwSDZg==","status":null,"download_url":"https://registry.npmjs.org/@episensor/app-framework/-/app-framework-4.0.0.tgz","registry_url":"https://www.npmjs.com/package/@episensor/app-framework/v/4.0.0","documentation_url":null,"install_command":"npm install @episensor/app-framework@4.0.0","immutable":null,"metadata":{"deprecated":null,"_npmUser":{"name":"episensor","email":"brendan.carroll@episensor.com"},"dist":{"integrity":"sha512-sme6P7K57yOFXN6F5BJ9q8kN4B+E29izQEzoVhB57M/l66s4wRPuGCJJvQXYwbt1tsT2HPssR2k6XOGzDwSDZg==","shasum":"461f3cfefda35176f4c522b7a1b3b0eb51f9a328","tarball":"https://registry.npmjs.org/@episensor/app-framework/-/app-framework-4.0.0.tgz","fileCount":260,"unpackedSize":2589050,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCICPxGKGEAoa/S98I+gAGC19XCZUAnNXrjio4R5QSoYjPAiAwEhE3Y+b9JNumcNdfswBMMxFBZatpmzmY44NL8Ixl0Q=="}]},"gitHead":"0df69df183436395179df77a3591716d47114fb7","main":"dist/index.js","scripts":{"build":"tsc","build:watch":"tsc --watch","clean":"rm -rf dist","prebuild":"npm run clean","test":"npm run test:unit \u0026\u0026 npm run test:integration","test:unit":"jest tests/unit/","test:integration":"jest tests/integration/ --passWithNoTests","test:watch":"jest --watch","test:coverage":"jest --coverage","test:coverage:unit":"jest tests/unit/ --coverage","test:coverage:integration":"jest tests/integration/ --coverage","test:security":"npm audit --audit-level moderate","security:deps":"npm audit fix --audit-level moderate --dry-run","benchmark":"echo 'Benchmarks not yet implemented'","docs:api":"typedoc --out docs/api src/index.ts","docs:build":"echo 'Documentation site build not yet configured'","lint":"eslint src/ --ext .ts","lint:fix":"eslint src/ --ext .ts --fix","format":"prettier --write 'src/**/*.ts' '*.md'","format:check":"prettier --check 'src/**/*.ts' '*.md'","typecheck":"tsc --noEmit","prepare":"npm run build"},"_npmVersion":"10.9.2","_nodeVersion":"22.13.0","_hasShrinkwrap":false,"directories":{},"engines":{"node":"\u003e=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./core":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.js"},"./services":{"types":"./dist/services/index.d.ts","import":"./dist/services/index.js"},"./middleware":{"types":"./dist/middleware/index.d.ts","import":"./dist/middleware/index.js"},"./utils":{"types":"./dist/utils/index.d.ts","import":"./dist/utils/index.js"},"./desktop":{"types":"./dist/desktop/index.d.ts","import":"./dist/desktop/index.js"},"./ui":{"types":"./ui/dist/index.d.ts","import":"./ui/dist/index.js","require":"./ui/dist/index.js"},"./ui/utils":{"types":"./dist/ui/utils/index.d.ts","import":"./dist/ui/utils/index.js"},"./ui/styles/globals.css":"./ui/styles/globals.css"},"browserify":null},"created_at":"2025-09-06T09:20:36.480Z","updated_at":"2025-09-06T09:20:39.095Z","purl":"pkg:npm/%40episensor/app-framework@4.0.0","related_tag":null,"latest":false,"version_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@episensor%2Fapp-framework/versions/4.0.0","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@episensor%2Fapp-framework/versions/4.0.0/codemeta","dependencies":[{"id":1713999473,"ecosystem":"npm","package_name":"@types/express-session","requirements":"^1.18.2","kind":"runtime","optional":false},{"id":1713999474,"ecosystem":"npm","package_name":"@types/multer","requirements":"^2.0.0","kind":"runtime","optional":false},{"id":1713999475,"ecosystem":"npm","package_name":"archiver","requirements":"^7.0.1","kind":"runtime","optional":false},{"id":1713999476,"ecosystem":"npm","package_name":"boxen","requirements":"^8.0.1","kind":"runtime","optional":false},{"id":1713999477,"ecosystem":"npm","package_name":"chalk","requirements":"^5.5.0","kind":"runtime","optional":false},{"id":1713999478,"ecosystem":"npm","package_name":"commander","requirements":"^12.1.0","kind":"runtime","optional":false},{"id":1713999479,"ecosystem":"npm","package_name":"cors","requirements":"^2.8.5","kind":"runtime","optional":false},{"id":1713999480,"ecosystem":"npm","package_name":"dotenv","requirements":"^17.2.1","kind":"runtime","optional":false},{"id":1713999481,"ecosystem":"npm","package_name":"esbuild","requirements":"^0.25.9","kind":"runtime","optional":false},{"id":1713999482,"ecosystem":"npm","package_name":"express","requirements":"^4.21.2","kind":"runtime","optional":false},{"id":1713999483,"ecosystem":"npm","package_name":"express-session","requirements":"^1.18.2","kind":"runtime","optional":false},{"id":1713999484,"ecosystem":"npm","package_name":"fs-extra","requirements":"^11.2.0","kind":"runtime","optional":false},{"id":1713999485,"ecosystem":"npm","package_name":"lowdb","requirements":"^7.0.1","kind":"runtime","optional":false},{"id":1713999486,"ecosystem":"npm","package_name":"multer","requirements":"^2.0.2","kind":"runtime","optional":false},{"id":1713999487,"ecosystem":"npm","package_name":"openai","requirements":"^5.13.1","kind":"runtime","optional":false},{"id":1713999488,"ecosystem":"npm","package_name":"papaparse","requirements":"^5.5.3","kind":"runtime","optional":false},{"id":1713999489,"ecosystem":"npm","package_name":"sharp","requirements":"^0.34.3","kind":"runtime","optional":false},{"id":1713999490,"ecosystem":"npm","package_name":"socket.io","requirements":"^4.8.1","kind":"runtime","optional":false},{"id":1713999491,"ecosystem":"npm","package_name":"swagger-jsdoc","requirements":"^6.2.8","kind":"runtime","optional":false},{"id":1713999492,"ecosystem":"npm","package_name":"swagger-ui-express","requirements":"^5.0.1","kind":"runtime","optional":false},{"id":1713999493,"ecosystem":"npm","package_name":"unzipper","requirements":"^0.12.3","kind":"runtime","optional":false},{"id":1713999494,"ecosystem":"npm","package_name":"winston","requirements":"^3.17.0","kind":"runtime","optional":false},{"id":1713999495,"ecosystem":"npm","package_name":"winston-daily-rotate-file","requirements":"^5.0.0","kind":"runtime","optional":false},{"id":1713999496,"ecosystem":"npm","package_name":"xlsx","requirements":"^0.18.5","kind":"runtime","optional":false},{"id":1713999497,"ecosystem":"npm","package_name":"zod","requirements":"^3.23.8","kind":"runtime","optional":false},{"id":1713999498,"ecosystem":"npm","package_name":"@types/archiver","requirements":"^6.0.3","kind":"Development","optional":false},{"id":1713999499,"ecosystem":"npm","package_name":"@types/boxen","requirements":"^2.1.0","kind":"Development","optional":false},{"id":1713999500,"ecosystem":"npm","package_name":"@types/cors","requirements":"^2.8.17","kind":"Development","optional":false},{"id":1713999501,"ecosystem":"npm","package_name":"@types/express","requirements":"^4.17.23","kind":"Development","optional":false},{"id":1713999502,"ecosystem":"npm","package_name":"@types/fs-extra","requirements":"^11.0.4","kind":"Development","optional":false},{"id":1713999503,"ecosystem":"npm","package_name":"@types/jest","requirements":"^30.0.0","kind":"Development","optional":false},{"id":1713999504,"ecosystem":"npm","package_name":"@types/node","requirements":"^20.10.0","kind":"Development","optional":false},{"id":1713999505,"ecosystem":"npm","package_name":"@types/swagger-jsdoc","requirements":"^6.0.4","kind":"Development","optional":false},{"id":1713999506,"ecosystem":"npm","package_name":"@types/swagger-ui-express","requirements":"^4.1.8","kind":"Development","optional":false},{"id":1713999507,"ecosystem":"npm","package_name":"@types/ws","requirements":"^8.18.1","kind":"Development","optional":false},{"id":1713999508,"ecosystem":"npm","package_name":"@typescript-eslint/eslint-plugin","requirements":"^8.18.2","kind":"Development","optional":false},{"id":1713999509,"ecosystem":"npm","package_name":"@typescript-eslint/parser","requirements":"^8.18.2","kind":"Development","optional":false},{"id":1713999510,"ecosystem":"npm","package_name":"eslint","requirements":"^9.32.0","kind":"Development","optional":false},{"id":1713999511,"ecosystem":"npm","package_name":"globals","requirements":"^16.3.0","kind":"Development","optional":false},{"id":1713999512,"ecosystem":"npm","package_name":"jest","requirements":"^30.0.5","kind":"Development","optional":false},{"id":1713999513,"ecosystem":"npm","package_name":"npm-run-all","requirements":"^4.1.5","kind":"Development","optional":false},{"id":1713999514,"ecosystem":"npm","package_name":"prettier","requirements":"^3.5.1","kind":"Development","optional":false},{"id":1713999515,"ecosystem":"npm","package_name":"ts-jest","requirements":"^29.4.1","kind":"Development","optional":false},{"id":1713999516,"ecosystem":"npm","package_name":"ts-node","requirements":"^10.9.2","kind":"Development","optional":false},{"id":1713999517,"ecosystem":"npm","package_name":"tsx","requirements":"^4.20.4","kind":"Development","optional":false},{"id":1713999518,"ecosystem":"npm","package_name":"typescript","requirements":"^5.7.2","kind":"Development","optional":false}],"package_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@episensor%2Fapp-framework"}