mirror of
https://github.com/OpenWhispr/openwhispr.git
synced 2026-10-02 05:04:47 +08:00
* chore(mobile): Bump expo-updates to ~55.0.33 * fix(deps): update undici to 6.29.0 and 7.30.0 for high-severity advisories * fix(deps): update markdown-it override to 14.3.2 for linkify ReDoS advisory * fix(deps): override xcode's uuid to 11.1.1 in mobile for buffer bounds advisory * fix(mobile): transform uuid in jest so config-plugin tests load xcode The xcode uuid override installs uuid 11, whose default export is an ESM build that jest-expo resolves but does not transform, breaking the storekit and pod-deployment-target plugin suites.
234 lines
13 KiB
JSON
234 lines
13 KiB
JSON
{
|
|
"name": "open-whispr",
|
|
"version": "1.10.2",
|
|
"description": "A desktop dictation application using whisper.cpp for speech-to-text transcription",
|
|
"main": "main.js",
|
|
"private": true,
|
|
"engines": {
|
|
"node": ">=24"
|
|
},
|
|
"scripts": {
|
|
"compile:globe": "node scripts/build-globe-listener.js",
|
|
"compile:fast-paste": "node scripts/build-macos-fast-paste.js",
|
|
"compile:winkeys": "node scripts/build-windows-key-listener.js",
|
|
"compile:linuxkeys": "node scripts/build-linux-key-listener.js",
|
|
"compile:text-monitor": "node scripts/build-text-monitor.js",
|
|
"compile:winpaste": "node scripts/build-windows-fast-paste.js",
|
|
"compile:linux-paste": "node scripts/build-linux-fast-paste.js",
|
|
"compile:linux-system-audio": "node scripts/build-linux-system-audio.js",
|
|
"compile:media-remote": "node scripts/build-media-remote.js",
|
|
"compile:mediaremote-adapter": "node scripts/build-mediaremote-adapter.js",
|
|
"compile:mic-listener": "node scripts/build-macos-mic-listener.js",
|
|
"compile:calendar-listener": "node scripts/build-macos-calendar-listener.js",
|
|
"compile:audio-tap": "node scripts/build-macos-audio-tap.js",
|
|
"compile:native": "npm run compile:globe && npm run compile:fast-paste && npm run compile:winkeys && npm run compile:linuxkeys && npm run compile:winpaste && npm run compile:linux-paste && npm run compile:linux-system-audio && npm run compile:text-monitor && npm run compile:media-remote && npm run compile:mediaremote-adapter && npm run compile:mic-listener && npm run compile:calendar-listener && npm run compile:audio-tap",
|
|
"prestart": "npm run compile:native && npm run download:meeting-aec-helper && npm run download:sherpa-onnx && npm run download:yt-dlp && npm run download:qdrant && npm run download:embedding-model && npm run download:whisper-vad-model",
|
|
"start": "electron .",
|
|
"dev": "concurrently -k -r \"npm:dev:renderer\" \"npm:dev:main\"",
|
|
"predev:main": "npm run compile:native && npm run download:meeting-aec-helper && npm run download:sherpa-onnx && npm run download:yt-dlp && npm run download:qdrant && npm run download:embedding-model && npm run download:whisper-vad-model && npm run download:brand-fonts",
|
|
"dev:main": "cross-env NODE_ENV=development node scripts/run-electron.js --dev",
|
|
"dev:renderer": "cd src && vite",
|
|
"prebuild": "npm run compile:native && npm run download:whisper-cpp && npm run download:llama-server && npm run download:sherpa-onnx && npm run download:yt-dlp && npm run download:qdrant && npm run download:meeting-aec-helper && npm run download:whisper-vad-model && npm run download:embedding-model -- --for-build && npm run download:diarization-models -- --output-dir resources/bin/diarization-models && npm run download:brand-fonts",
|
|
"build": "cd src && vite build && cd .. && electron-builder",
|
|
"postinstall": "electron-builder install-app-deps",
|
|
"build:renderer": "cd src && vite build",
|
|
"compile:mac-icon": "node scripts/compile-macos-icon.js",
|
|
"prebuild:mac": "npm run compile:native && npm run compile:mac-icon && npm run download:whisper-cpp && npm run download:llama-server && npm run download:sherpa-onnx && npm run download:yt-dlp && npm run download:qdrant && npm run download:meeting-aec-helper && npm run download:whisper-vad-model && npm run download:diarization-models -- --output-dir resources/bin/diarization-models && npm run download:brand-fonts",
|
|
"build:mac": "npm run build:renderer && electron-builder --mac",
|
|
"build:mac:arm64": "npm run build:renderer && electron-builder --mac --arm64",
|
|
"build:mac:x64": "npm run build:renderer && electron-builder --mac --x64",
|
|
"prebuild:win": "npm run compile:native && npm run download:whisper-cpp && npm run download:llama-server && npm run download:sherpa-onnx && npm run download:yt-dlp && npm run download:qdrant && npm run download:meeting-aec-helper && npm run download:whisper-vad-model && npm run download:diarization-models -- --output-dir resources/bin/diarization-models && npm run download:nircmd && npm run download:windows-fast-paste && npm run download:windows-key-listener && npm run download:windows-mic-listener && npm run download:windows-system-audio-helper && npm run download:brand-fonts",
|
|
"build:win": "npm run build:renderer && electron-builder --win",
|
|
"prebuild:linux": "npm run compile:native && npm run download:whisper-cpp && npm run download:llama-server && npm run download:sherpa-onnx && npm run download:yt-dlp && npm run download:qdrant && npm run download:meeting-aec-helper && npm run download:whisper-vad-model && npm run download:diarization-models -- --output-dir resources/bin/diarization-models && npm run download:brand-fonts",
|
|
"build:linux": "npm run build:renderer && electron-builder --linux",
|
|
"build:linux:appimage": "npm run build:renderer && electron-builder --linux AppImage",
|
|
"build:linux:deb": "npm run build:renderer && electron-builder --linux deb",
|
|
"build:linux:rpm": "npm run build:renderer && electron-builder --linux rpm",
|
|
"build:linux:tar": "npm run build:renderer && electron-builder --linux tar.gz",
|
|
"prepack": "npm run compile:native && npm run download:whisper-cpp && npm run download:llama-server && npm run download:sherpa-onnx && npm run download:yt-dlp && npm run download:qdrant && npm run download:meeting-aec-helper && npm run download:whisper-vad-model && npm run download:diarization-models -- --output-dir resources/bin/diarization-models",
|
|
"pack": "npm run build:renderer && cross-env CSC_IDENTITY_AUTO_DISCOVERY=false electron-builder --dir",
|
|
"predist": "npm run compile:native && npm run download:whisper-cpp && npm run download:llama-server && npm run download:sherpa-onnx && npm run download:yt-dlp && npm run download:qdrant && npm run download:meeting-aec-helper && npm run download:whisper-vad-model && npm run download:diarization-models -- --output-dir resources/bin/diarization-models",
|
|
"dist": "npm run build:renderer && electron-builder",
|
|
"download:whisper-cpp": "node scripts/download-whisper-cpp.js --current",
|
|
"download:whisper-cpp:all": "node scripts/download-whisper-cpp.js --all",
|
|
"download:llama-server": "node scripts/download-llama-server.js --current",
|
|
"download:llama-server:all": "node scripts/download-llama-server.js --all",
|
|
"download:sherpa-onnx": "node scripts/download-sherpa-onnx.js --current",
|
|
"download:sherpa-onnx:all": "node scripts/download-sherpa-onnx.js --all",
|
|
"download:yt-dlp": "node scripts/download-yt-dlp.js --current",
|
|
"download:yt-dlp:all": "node scripts/download-yt-dlp.js --all",
|
|
"download:nircmd": "node scripts/download-nircmd.js",
|
|
"download:windows-fast-paste": "node scripts/download-windows-fast-paste.js",
|
|
"download:windows-key-listener": "node scripts/download-windows-key-listener.js",
|
|
"download:windows-mic-listener": "node scripts/download-windows-mic-listener.js",
|
|
"download:windows-system-audio-helper": "node scripts/download-windows-system-audio-helper.js",
|
|
"download:meeting-aec-helper": "node scripts/download-meeting-aec-helper.js --current",
|
|
"download:meeting-aec-helper:all": "node scripts/download-meeting-aec-helper.js --all",
|
|
"download:qdrant": "node scripts/download-qdrant.js --current",
|
|
"download:qdrant:all": "node scripts/download-qdrant.js --all",
|
|
"download:embedding-model": "node scripts/download-minilm.js",
|
|
"download:diarization-models": "node scripts/download-diarization-models.js",
|
|
"download:whisper-vad-model": "node scripts/download-whisper-vad-model.js",
|
|
"download:brand-fonts": "node scripts/download-brand-fonts.js",
|
|
"format:js": "eslint . --fix && cd src && eslint . --fix && prettier --write \"**/*.{js,jsx,ts,tsx,json,css,md}\"",
|
|
"format": "npm run format:js",
|
|
"format:check": "eslint . && cd src && eslint . && prettier --check \"**/*.{js,jsx,ts,tsx,json,css,md}\"",
|
|
"lint": "eslint . && cd src && eslint .",
|
|
"test": "node --import tsx --test \"test/**/*.test.js\"",
|
|
"typecheck": "cd src && tsc --noEmit",
|
|
"quality-check": "npm run format:check && npm run typecheck",
|
|
"i18n:check": "node scripts/check-i18n.js",
|
|
"preview": "cd src && vite preview",
|
|
"clean": "node cleanup.js"
|
|
},
|
|
"keywords": [
|
|
"dictation",
|
|
"speech-to-text",
|
|
"whisper",
|
|
"whisper.cpp",
|
|
"electron",
|
|
"desktop-app"
|
|
],
|
|
"author": {
|
|
"name": "OpenWhispr Team",
|
|
"email": "support@openwhispr.com"
|
|
},
|
|
"license": "MIT",
|
|
"devDependencies": {
|
|
"@electron/notarize": "^3.0.1",
|
|
"@eslint/js": "^9.39.4",
|
|
"@tailwindcss/vite": "^4.2.2",
|
|
"@types/canvas-confetti": "^1.9.0",
|
|
"@types/react": "^19.1.2",
|
|
"@types/react-dom": "^19.1.2",
|
|
"@vitejs/plugin-react": "^6.0.1",
|
|
"autoprefixer": "^10.5.0",
|
|
"concurrently": "^10.0.3",
|
|
"cross-env": "^10.0.0",
|
|
"electron": "^41.10.7",
|
|
"electron-builder": "^26.4.0",
|
|
"emojibase-data": "^17.0.0",
|
|
"eslint": "^10.7.0",
|
|
"eslint-plugin-react-hooks": "^7.1.1",
|
|
"eslint-plugin-react-refresh": "^0.5.2",
|
|
"espree": "^11.2.0",
|
|
"globals": "17.5.0",
|
|
"happy-dom": "^20.14.5",
|
|
"postcss": "^8.5.10",
|
|
"prettier": "^3.8.3",
|
|
"tailwindcss": "^4.1.10",
|
|
"tsx": "^4.23.1",
|
|
"typescript": "^6.0.2",
|
|
"typescript-eslint": "^8.58.1",
|
|
"vite": "^8.1.4"
|
|
},
|
|
"dependencies": {
|
|
"@ai-sdk/amazon-bedrock": "^4.0.93",
|
|
"@ai-sdk/anthropic": "^3.0.58",
|
|
"@ai-sdk/azure": "^3.0.53",
|
|
"@ai-sdk/google": "^3.0.43",
|
|
"@ai-sdk/google-vertex": "^4.0.108",
|
|
"@ai-sdk/groq": "^3.0.29",
|
|
"@ai-sdk/openai": "^3.0.41",
|
|
"@ai-sdk/provider": "^3.0.14",
|
|
"@aws-sdk/client-bedrock": "^3.1090.0",
|
|
"@aws-sdk/credential-providers": "^3.1029.0",
|
|
"@better-auth/sso": "1.6.27",
|
|
"@fontsource-variable/caveat": "^5.3.0",
|
|
"@fontsource-variable/inter": "^5.3.0",
|
|
"@homebridge/dbus-native": "^0.7.7",
|
|
"@napi-rs/keyring": "^1.3.0",
|
|
"@qdrant/js-client-rest": "^1.12.0",
|
|
"@radix-ui/react-accordion": "^1.1.2",
|
|
"@radix-ui/react-dialog": "^1.1.14",
|
|
"@radix-ui/react-direction": "1.1.2",
|
|
"@radix-ui/react-dropdown-menu": "^2.1.15",
|
|
"@radix-ui/react-label": "^2.1.7",
|
|
"@radix-ui/react-popover": "^1.1.15",
|
|
"@radix-ui/react-progress": "^1.1.7",
|
|
"@radix-ui/react-select": "^2.2.5",
|
|
"@radix-ui/react-slot": "^1.2.3",
|
|
"@radix-ui/react-tabs": "^1.1.12",
|
|
"@tanstack/react-virtual": "^3.13.2",
|
|
"@tiptap/core": "3.31.3",
|
|
"@tiptap/extension-bubble-menu": "3.31.3",
|
|
"@tiptap/extension-floating-menu": "3.31.3",
|
|
"@tiptap/extension-horizontal-rule": "3.31.3",
|
|
"@tiptap/extension-mention": "3.31.3",
|
|
"@tiptap/extension-placeholder": "3.31.3",
|
|
"@tiptap/extension-table": "3.31.3",
|
|
"@tiptap/extension-task-item": "3.31.3",
|
|
"@tiptap/extension-task-list": "3.31.3",
|
|
"@tiptap/pm": "3.31.3",
|
|
"@tiptap/react": "3.31.3",
|
|
"@tiptap/starter-kit": "3.31.3",
|
|
"@tiptap/suggestion": "3.31.3",
|
|
"ai": "^6.0.116",
|
|
"better-auth": "1.6.27",
|
|
"better-sqlite3": "12.9.0",
|
|
"canvas-confetti": "^1.9.4",
|
|
"class-variance-authority": "^0.7.1",
|
|
"clsx": "^2.1.1",
|
|
"dotenv": "^17.4.1",
|
|
"electron-updater": "^6.6.2",
|
|
"ffmpeg-static": "^5.2.0",
|
|
"flatted": "^3.4.2",
|
|
"i18next": "^26.3.6",
|
|
"kysely": "^0.28.17",
|
|
"object-assign": "^4.1.1",
|
|
"onnxruntime-node": "^1.21.0",
|
|
"opencc-js": "^1.4.1",
|
|
"ps-list": "^9.0.0",
|
|
"react": "^19.1.0",
|
|
"react-dom": "^19.1.0",
|
|
"react-i18next": "^17.0.10",
|
|
"react-markdown": "^10.1.0",
|
|
"remark-gfm": "^4.0.1",
|
|
"shadcn-ui": "^0.9.5",
|
|
"tailwind-merge": "^3.3.1",
|
|
"tar": "^7.5.22",
|
|
"tinfoil": "^1.1.8",
|
|
"tiptap-markdown": "^0.9.0",
|
|
"tw-animate-css": "^1.3.4",
|
|
"unbzip2-stream": "^1.4.3",
|
|
"unzipper": "^0.12.3",
|
|
"ws": "8.21.0",
|
|
"zod": "^4.3.6",
|
|
"zustand": "^5.0.11"
|
|
},
|
|
"overrides": {
|
|
"adm-zip": "^0.6.1",
|
|
"@tiptap/extension-blockquote": "3.31.3",
|
|
"@tiptap/extension-bold": "3.31.3",
|
|
"@tiptap/extension-bubble-menu": "3.31.3",
|
|
"@tiptap/extension-bullet-list": "3.31.3",
|
|
"@tiptap/extension-code": "3.31.3",
|
|
"@tiptap/extension-code-block": "3.31.3",
|
|
"@tiptap/extension-document": "3.31.3",
|
|
"@tiptap/extension-dropcursor": "3.31.3",
|
|
"@tiptap/extension-floating-menu": "3.31.3",
|
|
"@tiptap/extension-gapcursor": "3.31.3",
|
|
"@tiptap/extension-hard-break": "3.31.3",
|
|
"@tiptap/extension-heading": "3.31.3",
|
|
"@tiptap/extension-horizontal-rule": "3.31.3",
|
|
"@tiptap/extension-italic": "3.31.3",
|
|
"@tiptap/extension-link": "3.31.3",
|
|
"@tiptap/extension-list": "3.31.3",
|
|
"@tiptap/extension-list-item": "3.31.3",
|
|
"@tiptap/extension-list-keymap": "3.31.3",
|
|
"@tiptap/extension-ordered-list": "3.31.3",
|
|
"@tiptap/extension-paragraph": "3.31.3",
|
|
"@tiptap/extension-strike": "3.31.3",
|
|
"@tiptap/extension-text": "3.31.3",
|
|
"@tiptap/extension-underline": "3.31.3",
|
|
"@tiptap/extensions": "3.31.3",
|
|
"@tiptap/pm": "3.31.3",
|
|
"@xmldom/xmldom": "0.8.15",
|
|
"fast-xml-builder": "1.2.0",
|
|
"fast-xml-parser": "5.7.2",
|
|
"ip-address": "10.2.0",
|
|
"markdown-it": "14.3.2",
|
|
"tmp": "0.2.7"
|
|
}
|
|
}
|