Initial commit: mumh5, a modern Mumble client
Electron desktop app with a Svelte 5 interface for any Mumble server. - Mumble protocol core: TLS, handshake, channels, users, text, plugin data, client-side pacing of Murmur's rate limits - Voice: WebCodecs Opus over the TCP tunnel, voice activity, push to talk, always-on, devices, per-user volume and local mute - Several servers at once, voice on one; server rail with icons and ordering - Chat: channels, direct messages, side chat, file sharing through f0ckm, inline images without it, click-to-play YouTube - Profiles with rich descriptions, registration, rename, nicknames, connection information and moderation menus - Identity wizard, multiple identities, PKCS#12 import/export, desktop Mumble certificate import, certificate pinning and viewer - Tray icon with voice state - Unit, server and end-to-end tests against a real Murmur Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
import * as esbuild from 'esbuild';
|
||||
|
||||
// Bundles the Electron main and preload scripts to CommonJS in dist-electron/.
|
||||
export const options = {
|
||||
entryPoints: { main: 'electron/main.ts', preload: 'electron/preload.ts' },
|
||||
outdir: 'dist-electron',
|
||||
outExtension: { '.js': '.cjs' },
|
||||
bundle: true,
|
||||
platform: 'node',
|
||||
format: 'cjs',
|
||||
target: 'node22',
|
||||
external: ['electron'],
|
||||
sourcemap: true,
|
||||
logLevel: 'info'
|
||||
};
|
||||
|
||||
if (import.meta.url === `file://${process.argv[1]}`) await esbuild.build(options);
|
||||
Reference in New Issue
Block a user