{ "name": "puter.com", "version": "26.07", "author": "Puter Technologies Inc.", "license": "AGPL-3.0-only", "description": "Desktop environment in the browser!", "homepage": "https://puter.com", "type": "module", "directories": { "lib": "lib" }, "devDependencies": { "@babel/core": "^7.29.7", "@eslint/js": "^9.35.0", "@playwright/test": "^1.56.1", "@typescript-eslint/eslint-plugin": "^8.46.1", "@typescript-eslint/parser": "^8.46.1", "@vitest/coverage-v8": "^4.0.14", "babel-loader": "^10.1.1", "babel-plugin-istanbul": "^8.0.0", "chalk": "^4.1.0", "clean-css": "^5.3.2", "dotenv": "^16.4.5", "esbuild": "^0.28.0", "eslint": "^9.35.0", "eslint-config-prettier": "^10.1.8", "eslint-plugin-prettier": "^5.5.5", "globals": "^15.15.0", "husky": "^9.1.7", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-report": "^3.0.1", "istanbul-reports": "^3.2.0", "nodemon": "^3.1.0", "prettier": "^3.8.3", "prettier-plugin-jsdoc": "^1.8.1", "typescript": "^5.4.5", "uglify-js": "^3.17.4", "vitest": "^4.1.5", "webpack": "^5.88.2", "webpack-cli": "^5.1.1" }, "scripts": { "test:backend": "npm run setupExtensions && npm run build:workerLib && vitest run --config src/backend/vitest.config.ts ", "test:backend:postgres": "npm run setupExtensions && npm run build:workerLib && PUTER_TEST_DB_ENGINE=postgres vitest run --config src/backend/vitest.config.ts ", "test:puterjs": "npm run setupExtensions && vitest run --config src/puter-js/tests/api/vitest.config.ts", "test:puterjs:node": "npm run test:puterjs -- src/puter-js/tests/api/runners/node.test.ts", "test:puterjs:browser": "npm run test:puterjs -- src/puter-js/tests/api/runners/browser.test.ts", "test:puterjs:workerd": "npm run test:puterjs -- src/puter-js/tests/api/runners/workerd.test.ts", "test:puterjs:coverage": "npm run build:workerLib:coverage && npm run setupExtensions && rm -rf src/puter-js/coverage && PUTER_COVERAGE=1 vitest run --config src/puter-js/tests/api/vitest.config.ts && node ./tools/puterjsCoverageReport.mjs", "build:workerLib:coverage": "cd src/puter-js && npm run build:coverage && cd ../worker && npm run build", "start:gui": "nodemon --exec \"node dev-server.js\" ", "start": "node ./tools/start.mjs", "dev": "npm start", "build": "npm run setupExtensions && npm run build:ts && cd src/gui && node ./build.js && cd ../puter-js && npm run build", "build:workerLib": "cd src/puter-js && npm run build && cd ../worker && npm run build", "check-translations": "node tools/check-translations.js", "prepare": "husky", "build:ts": "tsc -p tsconfig.build.json && node ./tools/write-dist-package-json.mjs", "check:puterjs:types": "node tools/checkPuterjsTypes.mjs", "typecheck": "node tools/typecheck.mjs", "typecheck:update": "node tools/typecheck.mjs --update", "setupExtensions": "node ./tools/extensionSetup.mjs" }, "workspaces": [ "src/*" ], "nodemonConfig": { "ext": "js, json, mjs, jsx, svg, css", "ignore": [ "./dist/", "./node_modules/" ] }, "dependencies": { "@aws-sdk/client-s3": "^3.1020.0", "@aws-sdk/s3-request-presigner": "^3.1028.0", "dedent": "^1.5.3", "javascript-time-ago": "^2.5.11", "libphonenumber-js": "1.13.6", "miniflare": "^4.20260617.1", "open": "^10.1.0" }, "engines": { "node": ">=24.0.0" }, "allowScripts": { "@google/genai": false, "bcrypt": true, "better-sqlite3": true, "browser-tabs-lock": true, "classic-level": true, "esbuild": true, "fsevents": true, "protobufjs": true, "sharp": true, "workerd": true }, "overrides": { "undici": "^7.29.0" } }