awesome-reverse-engineering
바이너리·앱·펌웨어·포맷·프로토콜을 위한 역공학 도구와 학습 자료 모음
무료 오픈소스 앱, Razer·Windows 다이내믹 라이트 키보드·마우스용, 키별 RGB·DPI·앱별 키맵·매크로·타이핑 트레이너 제공
Free, open-source app for Razer and Windows Dynamic Lighting keyboards and mice: per-key RGB lighting, DPI tuning, per-app keymaps and macros, and a typing trainer.
기타TypeScript · RustGitHub @Brokenwatch24온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Open-source RGB lighting, macros & DPI software for keyboards and mice — a free Razer Synapse alternative for Windows. Per-key effects, per-app keymaps, typing trainer, test bench, automations (Home Assistant, CS2, Bambu Lab) and a community gallery.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Open-source RGB lighting, macros, per-app keymaps, DPI tuning and a typing trainer for keyboards and mice — a lightweight Razer Synapse alternative for Windows.
Website · Download · Community gallery · Docs
KeyHalo is a fast, privacy-first desktop app (Tauri 2 + Rust + React) that replaces heavy vendor suites for everyday tasks: per-key RGB lighting, mouse DPI and polling rate, per-app keyboard shortcuts and macros, a typing trainer, and a community gallery of profiles, keymaps and device definitions shared on GitHub. It supports Razer keyboards and mice natively and any Windows Dynamic Lighting (LampArray) device, with an OpenRGB bridge for more hardware.
| Device | Type | Connection | USB ID | Status |
|---|---|---|---|---|
| Razer Basilisk V3 | Mouse | Razer HID | 1532:0099 | ⚠️ Experimental |
| Razer BlackWidow V3 | Keyboard | Razer HID | 1532:024E | ⚠️ Experimental |
| Razer BlackWidow V3 Tenkeyless | Keyboard | Razer HID | 1532:0A24 | ⚠️ Experimental |
| Razer DeathAdder V2 | Mouse | Razer HID | 1532:0084 | ⚠️ Experimental |
| Razer DeathAdder V2 Mini | Mouse | Razer HID | 1532:008C | ⚠️ Experimental |
| Razer DeathAdder V2 Pro | Mouse | Razer HID | 1532:007C 1532:007D | ✅ Verified |
| Razer Huntsman Mini | Keyboard | Razer HID | 1532:0257 | ✅ Verified |
| Razer Huntsman Mini Analog | Keyboard | Razer HID | 1532:0282 | ⚠️ Experimental |
| Razer Viper Ultimate | Mouse | Razer HID | 1532:007A 1532:007B | ⚠️ Experimental |
Any keyboard or mouse that supports Windows Dynamic Lighting (LampArray) works generically, with no definition needed. Missing your device? Add it with the in-app Device Wizard or open a device support request. Tested it? Send a "Works on my device" report.
KeyHalo 1.0 is a public beta. What has been verified on real hardware (Razer Huntsman Mini fw 1.12 + DeathAdder V2 Pro fw 2.02 on Windows 11):
Implemented and unit-tested but not yet verified on real hardware/services — reports welcome: the OpenRGB bridge, LampArray colour writes, Bambu Lab MQTT, Home Assistant discovery, CS2/Dota 2 GSI and the LoL client API, DPI-stage writes and the remap engine in long sessions. The other Razer definitions in the table are marked Experimental for the same reason.
Download the latest KeyHalo_x.y.z_x64-setup.exe (NSIS, recommended) or .msi from
Releases and run it.
Windows 11 is recommended (Windows Dynamic Lighting devices require Windows 11).
From 1.1.0 on, KeyHalo updates itself: new versions download in the background and install
with one click (signed updates, Settings → General → Check for updates).
# Requirements: Node.js 22, Rust (rustup), MSVC Build Tools, WebView2
git clone https://github.com/Brokenwatch24/keyhalo.git
cd keyhalo
npm install
npm run app:dev # run the desktop app
npm run app:build # build installers into src-tauri/target/release/bundle
Just want to look around? npm run dev starts a browser demo with simulated devices at
http://localhost:1420.
Profiles, keymap packs, effects, typing packs and device definitions live in
community/ as plain JSON (effects are small sandboxed JS modules).
keyhalo://import?gist=<id> link.See CONTRIBUTING.md for the formats.
KeyHalo exposes a local REST/WebSocket API on 127.0.0.1 (optional token) and a small CLI,
so scripts, Stream Deck buttons and other tools can switch profiles, flash keys or read
device status. See docs/LOCAL_API.md.
Ideas welcome in Discussions.
Is it safe? Yes. KeyHalo never flashes firmware; it only sends the same documented runtime commands vendor software uses. It captures a snapshot of your device before the first change (Restore original), and Safe mode turns off every hardware write. Community effects run sandboxed, and keymap content that launches programs, types text or makes HTTP calls must be approved by you. See SECURITY.md.
Will it trigger anti-cheat? KeyHalo doesn't inject into games or install kernel drivers. Remapping and macros pause automatically while games on the pause list (Rainbow Six Siege, Valorant, Fortnite, Apex, Tarkov… editable) are focused. Still, games with kernel anti-cheat have their own rules: use macros in competitive games at your own risk.
Does it replace Razer Synapse? For supported devices, yes for lighting, DPI, polling rate and battery. You can uninstall Synapse, or keep both installed, but don't let both control the lighting at the same time.
Can it update my device's firmware? No, by design. Use the vendor's tool for firmware updates.
Does it work without an internet connection? Yes. The network is only used for the community gallery, GitHub publishing, update checks and the integrations you enable.
Contributions of all sizes are welcome, from a new device definition to a keymap pack for your favourite app. Start with CONTRIBUTING.md and the Code of Conduct.
MIT © 2026 Brokenwatch24 and KeyHalo contributors.
KeyHalo is not affiliated with or endorsed by Razer, Microsoft or any other hardware vendor. All trademarks belong to their respective owners.