Fix three Electron 12→42 protocol migration bugs in the resource swapper:
register protocol on the app session instead of default, generate valid
URLs from Windows paths, and prevent non-swapped krunker.io requests from
being cancelled. Swapper now rescans on page refresh to pick up file changes.
Add Husky pre-commit hook to run ESLint. Remove unused uuid dependency.
Update README with lint script, husky, and swapper improvements.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add flat-config ESLint with typescript-eslint recommended rules,
fix all lint errors (unused imports/vars, empty catches, Function types,
prefer-const, useless assignments), and rename stale kpc- CSS class to kcc-.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Fixes XSS via malicious userscript @name, @author, @version, @description
metadata and script setting titles/descriptions. Also escapes checkbox
grid labels. All use existing escapeHtml() helper.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Rename data folders from KCCClient to "Krunker Civilian Client" for
swapper, userscripts, and documents output. Bump version to 0.5.0.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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>