Files
Krunker-Civilian-Client-Test/vite.main.config.ts
T
bigjakk 87ddf1499d Initial commit — Krunker Civilian Client
Cross-platform Krunker.io game client forked from Krunker Police Client
with all KPD/moderator features stripped: no KPD auth, OBS recording,
evidence uploads, yt-dlp, bytenode, or code obfuscation.

Retained: unlimited FPS (custom Electron 42), ad blocking, resource
swapper, matchmaker, userscripts, chat translator, Discord RPC, alt
account manager, configurable keybinds, and advanced Chromium flags.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 06:38:15 -08:00

32 lines
909 B
TypeScript

import { defineConfig } from 'vite';
import { resolve } from 'path';
import { builtinModules } from 'module';
// Both 'fs' and 'node:fs' forms must be externalized
const nodeBuiltins = builtinModules.flatMap((m) => [m, `node:${m}`]);
const isProd = process.env.NODE_ENV === 'production' || !process.argv.includes('--mode');
export default defineConfig({
build: {
lib: {
entry: resolve(__dirname, 'src/main/index.ts'),
formats: ['cjs'],
fileName: () => 'index.js',
},
outDir: 'dist/main',
emptyDirBefore: true,
rollupOptions: {
external: ['electron', 'electron-store', ...nodeBuiltins],
},
target: 'node20',
minify: isProd,
sourcemap: !isProd,
},
resolve: {
// Treat this as a Node build — don't swap node builtins for browser stubs
conditions: ['node'],
mainFields: ['module', 'main'],
},
});