Files
GMW/package.json
T
MythEclipse bc212333d8 feat: implement Tone.js for professional audio transmit and listen
- Replace AudioWorkletNode with Tone.UserMedia for microphone capture
- Use Tone.Analyser for waveform analysis and Tone.Meter for level detection
- Implement proper stereo audio capture with real-time PCM transmission
- Use Tone.context for audio playback with proper buffer handling
- Add Tone.js CDN to HTML template
- Convert dashboard.js to ES module for Tone.js import
- Improve audio quality and reliability with battle-tested library
2026-05-13 22:46:24 +07:00

54 lines
1.5 KiB
JSON

{
"name": "discord-voice-recorder",
"version": "1.0.0",
"description": "Discord bot that joins a voice channel and records audio",
"main": "src/index.ts",
"scripts": {
"dev": "bun --watch src/index.ts",
"start": "bun src/index.ts",
"build": "tsc --outDir dist",
"typecheck": "tsc --noEmit",
"lint": "biome check --diagnostic-level=error .",
"format": "biome format --write .",
"test": "vitest run"
},
"dependencies": {
"@discordjs/opus": "^0.10.0",
"@discordjs/voice": "^0.19.1",
"@snazzah/davey": "^0.1.10",
"better-sqlite3": "^12.10.0",
"class-transformer": "^0.5.1",
"class-validator": "^0.15.1",
"discord.js-selfbot-v13": "^3.7.1",
"dotenv": "^17.4.2",
"express": "^5.2.1",
"fluent-ffmpeg": "^2.1.3",
"helmet": "^8.1.0",
"howler": "^2.2.4",
"libsodium-wrappers": "^0.8.2",
"p-retry": "^6.2.0",
"pino": "^9.4.0",
"pino-http": "^11.0.0",
"prism-media": "2.0.0-alpha.0",
"prom-client": "^15.1.3",
"react": "^19.2.6",
"react-dom": "^19.2.6",
"sodium-native": "^4.3.2",
"tone": "^15.1.22",
"ws": "^8.20.1",
"zod": "^4.4.3"
},
"devDependencies": {
"@biomejs/biome": "latest",
"@types/better-sqlite3": "^7.6.13",
"@types/express": "^5.0.6",
"@types/fluent-ffmpeg": "^2.1.28",
"@types/react": "^19.2.14",
"@types/react-dom": "^19.2.3",
"@types/ws": "^8.18.1",
"bun-types": "latest",
"pino-pretty": "^10.3.1",
"vitest": "latest"
}
}