{
"name": "keet",
"version": "3.24.0",
"type": "module",
"main": "index.html",
"scripts": {
"build": "npm run compile && node node_modules/@holepunchto/safe-obfs/bin.js",
"compile": "rm -rf ./build && swc ./src -d ./build --copy-files",
"compile:watch": "npm run compile -- --watch --config-file .swcrcdev",
"dev": "NODE_ENV=dev concurrently -P --kill-others --kill-others-on-fail \"npm run compile:watch\" \"npm run dev:run -- {@} .\" --",
"dev:run": "NODE_ENV=dev pear run -d",
"dev:tools": "redux-devtools --hostname=localhost --port=8000 --open=browser",
"lint": "eslint . --ext .js --ext .jsx --quiet",
"lint:fix": "npm run lint -- --fix",
"prepare": "node .husky/install.js",
"prestage": "./scripts/prestage/cleanup.sh && npm run compile",
"postinstall": "npx --yes patch-package",
"test": "npm run lint && npm run test:brittle:coverage && npm run test:jest:coverage",
"test:brittle": "brittle test/**/*.test.js",
"test:brittle:coverage": "npm run test:brittle -- --coverage",
"test:jest": "npx jest --no-cache test/components/ test/hooks/ --config=jest.config.js",
"test:jest:coverage": "npm run test:jest -- --coverage",
"test:single": "brittle $1"
},
"overrides": {
"nwsapi": "2.2.13"
},
"dependencies": {
"@floating-ui/dom": "^1.6.13",
"@floating-ui/react": "^0.26.28",
"@holepunchto/emojis": "^2.1.3",
"@holepunchto/keet-backend": "^18.0.1",
"@holepunchto/keet-call": "^10.0.0",
"@holepunchto/keet-core-api": "^1.37.0",
"@holepunchto/keet-debug-helper": "^1.3.0",
"@holepunchto/keet-editor": "^2.0.2",
"@holepunchto/keet-link-preview": "^1.0.11",
"@holepunchto/keet-store": "^4.77.2",
"@holepunchto/keet-translations": "^2.4.0",
"@picmo/popup-picker": "^5.8.5",
"@reduxjs/toolkit": "^2.6.1",
"@rive-app/canvas": "2.26.4",
"@twind/content": "^0.1.0",
"@twind/forms": "^0.1.4",
"bare-rpc": "^0.1.4",
"canvas-resize-image": "^1.0.1",
"copy-text-to-clipboard": "^3.2.0",
"dayjs": "^1.11.13",
"fuse.js": "^7.1.0",
"get-mime-type": "^1.0.2",
"hotkeys-js": "^3.13.9",
"html-react-parser": "5.2.1",
"lightgallery": "2.7.2",
"lodash.debounce": "^4.0.8",
"lodash.throttle": "^4.1.1",
"pear-hotmods": "^1.0.3",
"picmo": "^5.8.5",
"pretty-bytes": "^6.1.1",
"process-top": "^1.6.0",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react-redux": "9.1.2",
"throwaway-local-cache": "^1.1.0",
"tippy.js": "^6.3.7",
"twind": "^0.16.19",
"webcomponent-qr-code": "^1.3.0"
},
"devDependencies": {
"@holepunchto/obfs": "^1.0.72",
"@holepunchto/pear-hotmods": "^1.0.2",
"@holepunchto/safe-obfs": "^1.2.1",
"@redux-devtools/cli": "^3.0.4",
"@swc/cli": "^0.5.2",
"@swc/core": "^1.11.20",
"@swc/jest": "^0.2.37",
"@testing-library/jest-dom": "^6.6.3",
"@testing-library/react": "^16.3.0",
"brittle": "^3.13.1",
"chokidar": "^3.6.0",
"concurrently": "^8.2.2",
"eslint": "^8.57.1",
"eslint-config-airbnb": "^19.0.4",
"eslint-plugin-jest": "^28.11.0",
"eslint-plugin-regex": "^1.10.0",
"figma-export-icons": "^1.5.0",
"husky": "^9.1.7",
"jest": "^29.7.0",
"jest-environment-jsdom": "^29.7.0",
"lint-staged": "^15.5.1",
"pear-interface": "^1.1.0",
"react-refresh": "0.14.2"
},
"lint-staged": {
"**/*.{js,jsx}": "npm run lint:fix"
},
"pear": {
"name": "keet",
"stage": {
"entrypoints": [
"/workers/compute/index.js"
],
"ignore": [
".eslintrc.cjs",
".git",
".github",
".gitignore",
".husky",
".swcrc",
".swcrcdev",
"docs",
"jest.config.js",
"node_modules/marked",
"node_modules/.package-lock.json",
"package-lock.json",
"scripts",
"src",
"test"
],
"prefetch": [
"assets"
]
},
"links": {
"localhost": "http://127.0.0.1",
"https": "https://*",
"compute": "./workers/compute"
},
"gui": {
"width": 1224,
"height": 808,
"minWidth": 800,
"minHeight": 600,
"backgroundColor": "#151517",
"hideable": true
},
"platform": {
"__legacyTitlebar": false
},
"userAgent": "Slackbot-LinkExpanding 1.0 (+https://api.slack.com/robots)"
},
"safe-obfs": {
"filter": [
"!src{,/**/*}"
],
"exclude": [
"node_modules",
"scripts"
],
"include": [
"build/src",
"node_modules/@holepunchto/blind-mirror",
"node_modules/@holepunchto/blind-pairing",
"node_modules/@holepunchto/blind-pairing-core",
"node_modules/@holepunchto/cachedb",
"node_modules/@holepunchto/hyperindex",
"node_modules/@holepunchto/keet-backend",
"node_modules/@holepunchto/keet-call",
"node_modules/@holepunchto/keet-core",
"node_modules/@holepunchto/keet-core-api",
"node_modules/@holepunchto/keet-debug-helper",
"node_modules/@holepunchto/keet-indexing",
"node_modules/@holepunchto/keet-default-config",
"node_modules/@holepunchto/keet-push",
"node_modules/@holepunchto/keet-store",
"node_modules/@holepunchto/protomap"
]
}
}