{ "name": "metoyou", "version": "1.0.0", "description": "P2P Discord-like chat application", "author": "Myxelium Name ", "url": "https://git.azaaxin.com/myxelium/Toju", "homepage": "https://git.azaaxin.com/myxelium/Toju", "main": "dist/electron/main.js", "scripts": { "ng": "cd \"toju-app\" && ng", "prebuild": "npm run bundle:rnnoise", "prestart": "npm run bundle:rnnoise", "bundle:rnnoise": "esbuild node_modules/@timephy/rnnoise-wasm/dist/NoiseSuppressorWorklet.js --bundle --format=esm --outfile=toju-app/public/rnnoise-worklet.js", "start": "cd \"toju-app\" && ng serve", "build": "cd \"toju-app\" && ng build", "build:electron": "tsc -p tsconfig.electron.json", "build:all": "npm run build && npm run build:electron && cd server && npm run build", "build:prod": "cd \"toju-app\" && ng build --configuration production --base-href='./'", "watch": "cd \"toju-app\" && ng build --watch --configuration development", "test": "cd \"toju-app\" && ng test", "server:build": "cd server && npm run build", "server:start": "cd server && npm start", "server:dev": "cd server && npm run dev", "electron": "npm run build && npm run build:electron && node tools/launch-electron.js . --no-sandbox --disable-dev-shm-usage", "electron:dev": "concurrently \"npm run start\" \"wait-on http://localhost:4200 && npm run build:electron && cross-env NODE_ENV=development node tools/launch-electron.js . --no-sandbox --disable-dev-shm-usage\"", "electron:full": "./dev.sh", "electron:full:build": "npm run build:all && concurrently --kill-others \"cd server && npm start\" \"cross-env NODE_ENV=production node tools/launch-electron.js . --no-sandbox --disable-dev-shm-usage\"", "migration:generate": "typeorm migration:generate electron/migrations/Auto -d dist/electron/data-source.js", "migration:create": "typeorm migration:create electron/migrations/New", "migration:run": "typeorm migration:run -d dist/electron/data-source.js", "migration:revert": "typeorm migration:revert -d dist/electron/data-source.js", "electron:build": "npm run build:prod && npm run build:electron && electron-builder", "electron:build:win": "npm run build:prod && npm run build:electron && electron-builder --win", "electron:build:mac": "npm run build:prod && npm run build:electron && electron-builder --mac", "electron:build:linux": "npm run build:prod && npm run build:electron && electron-builder --linux", "electron:build:all": "npm run build:prod && npm run build:electron && electron-builder --win --mac --linux", "build:prod:all": "npm run build:prod && npm run build:electron && cd server && npm run build", "build:prod:win": "npm run build:prod:all && electron-builder --win", "dev": "npm run build:electron && npm run electron:full", "dev:app": "npm run electron:dev", "lint": "eslint .", "lint:fix": "npm run format && npm run sort:props && eslint . --fix", "format": "prettier --write \"toju-app/src/app/**/*.html\"", "format:check": "prettier --check \"toju-app/src/app/**/*.html\"", "release:build:linux": "npm run build:prod:all && electron-builder --linux && npm run server:bundle:linux", "release:build:win": "npm run build:prod:all && electron-builder --win && npm run server:bundle:win", "release:manifest": "node tools/generate-release-manifest.js", "release:set-version": "node tools/set-release-version.js", "release:version": "node tools/resolve-release-version.js", "server:bundle:linux": "node tools/package-server-executable.js --target node18-linux-x64 --output metoyou-server-linux-x64", "server:bundle:win": "node tools/package-server-executable.js --target node18-win-x64 --output metoyou-server-win-x64.exe", "sort:props": "node tools/sort-template-properties.js" }, "private": true, "packageManager": "npm@10.9.2", "dependencies": { "@angular/common": "^21.0.0", "@angular/compiler": "^21.0.0", "@angular/core": "^21.0.0", "@angular/forms": "^21.0.0", "@angular/platform-browser": "^21.0.0", "@angular/router": "^21.0.0", "@codemirror/commands": "^6.10.3", "@codemirror/lang-json": "^6.0.2", "@codemirror/language": "^6.12.3", "@codemirror/state": "^6.6.0", "@codemirror/theme-one-dark": "^6.1.3", "@codemirror/view": "^6.41.0", "@ng-icons/core": "^33.0.0", "@ng-icons/lucide": "^33.0.0", "@ngrx/effects": "^21.0.1", "@ngrx/entity": "^21.0.1", "@ngrx/store": "^21.0.1", "@ngrx/store-devtools": "^21.0.1", "@spartan-ng/brain": "^0.0.1-alpha.589", "@spartan-ng/cli": "^0.0.1-alpha.589", "@spartan-ng/ui-core": "^0.0.1-alpha.380", "@timephy/rnnoise-wasm": "^1.0.0", "auto-launch": "^5.0.6", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", "codemirror": "^6.0.2", "cytoscape": "^3.33.1", "electron-updater": "^6.6.2", "mermaid": "^11.12.3", "ngx-remark": "^0.2.2", "prismjs": "^1.30.0", "reflect-metadata": "^0.2.2", "remark": "^15.0.1", "remark-breaks": "^4.0.0", "remark-gfm": "^4.0.1", "rxjs": "~7.8.0", "simple-peer": "^9.11.1", "sql.js": "^1.13.0", "tslib": "^2.3.0", "typeorm": "^0.3.28", "uuid": "^13.0.0", "wavesurfer.js": "^7.12.1" }, "devDependencies": { "@angular/build": "^21.0.4", "@angular/cli": "^21.0.4", "@angular/compiler-cli": "^21.0.0", "@eslint/js": "^9.39.3", "@stylistic/eslint-plugin-js": "^4.4.1", "@stylistic/eslint-plugin-ts": "^4.4.1", "@types/auto-launch": "^5.0.5", "@types/simple-peer": "^9.11.9", "@types/uuid": "^10.0.0", "angular-eslint": "21.2.0", "autoprefixer": "^10.4.23", "concurrently": "^8.2.2", "cross-env": "^10.1.0", "electron": "^39.2.7", "electron-builder": "^26.0.12", "eslint": "^9.39.2", "eslint-config-prettier": "^10.1.8", "eslint-plugin-import-newlines": "^1.4.1", "eslint-plugin-prettier": "^5.5.5", "glob": "^10.5.0", "pkg": "^5.8.1", "postcss": "^8.5.6", "prettier": "^3.8.1", "tailwindcss": "^3.4.19", "typescript": "~5.9.2", "typescript-eslint": "8.50.1", "wait-on": "^7.2.0" }, "build": { "appId": "com.metoyou.app", "productName": "MetoYou", "protocols": [ { "name": "Toju Invite Links", "schemes": [ "toju" ] } ], "directories": { "output": "dist-electron" }, "files": [ "dist/client/**/*", "dist/electron/**/*", "node_modules/**/*", "!node_modules/**/test/**/*", "!node_modules/**/tests/**/*", "!node_modules/**/*.d.ts", "!node_modules/**/*.map" ], "extraResources": [ { "from": "images", "to": "images", "filter": [ "**/*" ] } ], "nodeGypRebuild": false, "buildDependenciesFromSource": false, "npmRebuild": false, "publish": [ { "provider": "generic", "url": "https://tojusignal.azaaxin.com" } ], "mac": { "category": "public.app-category.social-networking", "target": [ "dmg", "zip" ], "icon": "images/macos/icon.icns" }, "win": { "target": "nsis", "artifactName": "${productName}-${version}-${arch}.${ext}", "icon": "images/windows/icon.ico" }, "nsis": { "oneClick": false, "allowToChangeInstallationDirectory": true }, "linux": { "target": [ "AppImage", "deb" ], "category": "Network;Chat", "executableName": "metoyou", "executableArgs": [ "--no-sandbox" ], "icon": "images/linux/icons" } } }