[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-82323":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":23,"hasPages":23,"topics":25,"createdAt":10,"pushedAt":10,"updatedAt":39,"readmeContent":40,"aiSummary":41,"trendingCount":16,"starSnapshotCount":16,"syncStatus":42,"lastSyncTime":43,"discoverSource":44},82323,"OpenLogi","AprilNEA\u002FOpenLogi","AprilNEA","⚡️A native, local-first alternative to Logitech Options+, written in Rust 🦀 — remap buttons, DPI, and SmartShift over HID++. No account, no telemetry.","",null,"Rust",4678,86,24,47,0,114,865,4190,512,107.82,"Apache License 2.0",false,"master",[26,27,28,29,30,31,32,33,34,35,36,37,38],"dpi","gpui","hid","hidpp","local-first","logitech","logitech-mouse","logitech-options","mouse-remapping","mx-master","privacy","rust","smartshift","2026-06-12 04:01:37","> [!WARNING]\n> **OpenLogi is under active development** and not yet stable — features and config may still change. Give the repo a **Star** ⭐ and **Watch** 👀 it to get notified the moment a release lands.\n\n\u003Ch4 align=\"right\">\u003Cstrong>English\u003C\u002Fstrong> | \u003Ca href=\"README_CN.md\">简体中文\u003C\u002Fa>\u003C\u002Fh4>\n\n\u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fassets.openlogi.org\u002Fbrand\u002Fopenlogi-animated.svg\" width=\"138\" alt=\"OpenLogi\"\u002F>\n\u003C\u002Fp>\n\n\u003Ch1 align=\"center\">OpenLogi\u003C\u002Fh1>\n\u003Cp align=\"center\">\u003Cstrong>⚡️ A native, local-first alternative to Logitech Options+, written in Rust 🦀\u003Cbr\u002F>Remap buttons, DPI, and SmartShift over HID++. No account, no telemetry.\u003C\u002Fstrong>\u003C\u002Fp>\n\n\n\u003Cdiv align=\"center\">\n    \u003Ca href=\"https:\u002F\u002Ftwitter.com\u002FAprilNEA\" target=\"_blank\">\n    \u003Cimg alt=\"twitter\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Ffollow-AprilNEA-green?style=social&logo=Twitter\">\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Ft.me\u002F+pCVJtHAgI3hjYTkx\" target=\"_blank\">\n    \u003Cimg alt=\"telegram\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fchat-telegram-blueviolet?style=flat&logo=Telegram\">\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FAprilNEA\u002FOpenLogi\u002Freleases\" target=\"_blank\">\n    \u003Cimg alt=\"GitHub downloads\" src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fdownloads\u002FAprilNEA\u002FOpenLogi\u002Ftotal.svg?style=flat\">\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FAprilNEA\u002FOpenLogi\u002Fcommits\" target=\"_blank\">\n    \u003Cimg alt=\"GitHub commit\" src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fcommit-activity\u002Fm\u002FAprilNEA\u002FOpenLogi?style=flat\">\u003C\u002Fa>\n    \u003Cimg alt=\"Hits\" src=\"https:\u002F\u002Fhits.aprilnea.com\u002Fhits?url=https:\u002F\u002Fgithub.com\u002Faprilnea\u002Fopenlogi\">\n\u003C\u002Fdiv>\n\n> **Options+ ? Try OpenLogi.**\n\nRemap buttons, drive DPI and SmartShift, and switch profiles per app — without a Logitech account, telemetry, or the official Options+ install. No cloud, plain TOML config; the only network calls are device-image fetches and an opt-in, off-by-default update check.\n\n---\n\n## What it is\n\nOpenLogi talks to Logitech HID++ mice over a Logi Bolt receiver — or a\nBluetooth-direct \u002F wired connection — without running Logi Options+. It ships\ntwo binaries:\n\n- **[OpenLogi GUI](crates\u002Fopenlogi-gui)** — a GPUI desktop app: an interactive mouse diagram with clickable hotspots, a per-button action picker (37 built-in actions plus recorded custom shortcuts), DPI presets, a SmartShift toggle, per-application profile overlays, and a device carousel that switches between paired devices live.\n- **[OpenLogi CLI](crates\u002Fopenlogi-cli)** — a CLI for headless inventory (`list`) plus asset-sync and on-device diagnostic subcommands.\n\nEverything is local: bindings live in a plain TOML file, button presses are remapped through the OS event tap, and DPI \u002F SmartShift changes are written straight to the device over HID++.\n\nmacOS is supported today; Linux and Windows are coming soon — see\n[Roadmap](#roadmap).\n\n## Roadmap\n\n| Capability | State |\n|---|---|\n| Discover Bolt receivers + list paired devices (CLI + GUI) | ✅ |\n| Bluetooth-direct \u002F wired devices (no receiver) | ✅ |\n| Battery percentage \u002F charge state | ✅ (online devices) |\n| Interactive GUI: carousel, mouse diagram, action picker | ✅ macOS |\n| Button remapping via the OS event tap (side Back \u002F Forward today) | ✅ macOS |\n| 37-action catalog + recorded custom keyboard shortcuts | ✅ macOS¹ |\n| DPI control + presets + Cycle \u002F Set-preset actions (HID++ `0x2201`) | ✅ macOS |\n| SmartShift wheel-mode toggle (HID++ `0x2111`) | ✅ macOS |\n| Per-application profile overlays (auto-switch on app focus) | ✅ macOS |\n| Launch-at-login + opt-in update check | ✅ (TOML only — no settings UI yet) |\n| Gesture-button per-direction bindings | 🟡 configurable; hardware capture pending |\n| Middle \u002F mode-shift \u002F thumbwheel button capture | 🟡 configurable; hook owns side buttons only |\n| Linux \u002F Windows event hook | ❌ stub (`Unsupported`) |\n| Unifying receivers | ❌ (not yet in `hidpp 0.2`) |\n\n¹ A few actions (e.g. the media keys) currently log their intended event rather than posting it — tracked as a follow-up.\n\n## Install\n\n> [!IMPORTANT]\n> Quit **Logi Options+** first — the two applications fight over HID++ access and only one can own a given receiver at a time.\n\nDownload the signed, notarized `.dmg` from the [latest release](https:\u002F\u002Fgithub.com\u002FAprilNEA\u002FOpenLogi\u002Freleases\u002Flatest) and drag `OpenLogi.app` to `\u002FApplications`.\n\nOr install via [Homebrew](https:\u002F\u002Fbrew.sh):\n\n```sh\nbrew install --cask aprilnea\u002Ftap\u002Fopenlogi\n```\n\nTo build from source, see [DEVELOPMENT.md](docs\u002FDEVELOPMENT.md).\n\n## Usage (CLI)\n\nSee [USAGE.md](docs\u002FUSAGE.md)\n\n## Configuration\n\nSee [CONFIGURATION.md](docs\u002FCONFIGURATION.md)\n\n## Developing\n\nSee [DEVELOPMENT.md](docs\u002FDEVELOPMENT.md)\n\n## Acknowledgments\n\n- [`hidpp`](https:\u002F\u002Fcrates.io\u002Fcrates\u002Fhidpp) by [@lus](https:\u002F\u002Fgithub.com\u002Flus)\n- [Solaar](https:\u002F\u002Fgithub.com\u002Fpwr-Solaar\u002FSolaar)\n- [Mouser](https:\u002F\u002Fgithub.com\u002FTomBadash\u002FMouser) by Tom Badash\n\n## License\n\nDual-licensed under either of\n\n- Apache License, Version 2.0 ([LICENSE-APACHE](LICENSE-APACHE))\n- MIT license ([LICENSE-MIT](LICENSE-MIT))\n\nat your option.\n\n---\n\n**Not affiliated with Logitech.** \"Logitech\", \"MX Master\", and \"Options+\" are trademarks of Logitech International S.A.\n","OpenLogi 是一个用 Rust 编写的本地优先的 Logitech Options+ 替代方案，旨在让用户无需创建账户或接受遥测即可重映射鼠标按钮、调整 DPI 以及配置 SmartShift。该项目的核心功能包括通过 HID++ 协议与罗技设备通信，支持蓝牙直连和有线连接，并且提供了图形用户界面和命令行工具两种方式来管理设备设置。其配置文件采用简单的 TOML 格式存储，所有操作都在本地完成，保证了用户的隐私安全。适用于重视隐私保护同时需要高度自定义鼠标功能的用户，在 macOS 上已经可用，未来将支持 Linux 和 Windows 平台。",2,"2026-06-11 04:08:23","CREATED_QUERY"]