https://github.com/adarshb2000/laptopcontrollerv2
Gamepad PC controller
https://github.com/adarshb2000/laptopcontrollerv2
gamepad gaming-utilities keyboard-emulation keyboard-emulator linux-tools rust tauri windows-utilities windows-utility
Last synced: 13 days ago
JSON representation
Gamepad PC controller
- Host: GitHub
- URL: https://github.com/adarshb2000/laptopcontrollerv2
- Owner: Adarshb2000
- License: mit
- Created: 2025-02-12T12:08:34.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2025-02-15T10:39:45.000Z (over 1 year ago)
- Last Synced: 2025-02-24T13:18:31.422Z (over 1 year ago)
- Topics: gamepad, gaming-utilities, keyboard-emulation, keyboard-emulator, linux-tools, rust, tauri, windows-utilities, windows-utility
- Language: Rust
- Homepage:
- Size: 230 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Gamepad Keyboard
๐ **Control your PC with a Gamepad!**
LaptopControllerV2 is a lightweight application that transforms your game controller into a **mouse, keyboard, and navigation tool** for your PC. Built with **Rust & Tauri**, it offers a seamless, low-latency experience.

---
## ๐ฅ Features
๐ฎ **Full PC Control via Gamepad**
- Move the mouse with the joystick ๐ฏ
- Click & scroll using triggers and buttons ๐
- Type using an intuitive radial keyboard โจ๏ธ
๐น๏ธ **Two Modes: Mouse & Keyboard**
- **Mouse Mode:** Use joysticks to move the cursor and triggers to click.
- **Keyboard Mode:** Enter text using a radial keyboard layout.
โก **Quick Toggles & Customization**
- Press **Start** to activate/deactivate the controller.
- Switch keyboard layouts on the fly ๐
- Non-intrusive **toast notifications** for feedback.
๐ฆ **Lightweight & Fast**
- Runs as an **overlay** with minimal CPU usage.
- Built with **Tauri**, offering a native-like experience.
---
## ๐ Installation
### Windows (64-bit)
1. **Download the `.msi` installer** from [Releases](https://github.com/Adarshb2000/LaptopControllerV2/releases).
2. Run the installer and follow the setup.
3. Launch the application and connect your gamepad.
### Linux (Ubuntu/Debian)
1. **Download the `.deb` package** from [Releases](https://github.com/Adarshb2000/LaptopControllerV2/releases).
2. Open a terminal and run:
```sh
sudo dpkg -i LaptopControllerV2_x86_64.deb
```
3. Start the app and connect your gamepad.
> ๐ ๏ธ **Note:** Compatibility with other Linux distributions & Windows versions is untested. Contributions are welcome!
Here's the updated **macOS (Experimental)** section with a bit of personality:
### macOS (Experimental)
I **don't have a Mac**, so macOS support is purely theoreticalโ**but I trust my code** (probably more than I should). If youโre brave enough to try it, hereโs how:
1. Install Rust & Tauri dependencies:
2. Clone the repository:
```sh
git clone https://github.com/Adarshb2000/LaptopControllerV2.git
cd LaptopControllerV2
```
3. Build and run:
```
npm i
npm run tauri dev
```
> โ ๏ธ **Disclaimer:** If something breaks, it's not a bugโitโs just an *undocumented feature*. Contributions to improve macOS compatibility are **highly encouraged!**
---
## ๐ ๏ธ How It Works
LaptopControllerV2 reads **gamepad inputs** and translates them into **mouse and keyboard actions**.
- Uses **Enigo** for simulating mouse/keyboard input.
- Handles gamepad events via **Gilrs**.
- Uses **Tauri** to create a cross-platform desktop app.
---
## ๐ฏ Future Scope
๐ ๏ธ **Customization**
- Custom radial keyboard layouts ๐จ
- Save & load different configurations
- Profiles for gaming, productivity, etc.
โ๏ธ **Input Enhancements**
- Support for advanced key combos (e.g., **Ctrl+C, Alt+Tab**)
- Macro recording & playback
- Custom **quick action zones** in the radial menu
๐๏ธ **Fine-Tuned Controls**
- Adjustable mouse movement & scroll sensitivity
- Custom **joystick dead zones**
- **Haptic feedback** (if supported by hardware)
๐ฎ **Long-Term Goal**
- Text prediction & word completion (not planned for now).
---
## ๐ก Contributing
Contributions are welcome! If you'd like to help improve the project, feel free to:
- **Report issues** via [GitHub Issues](https://github.com/Adarshb2000/LaptopControllerV2/issues).
- **Submit pull requests** with bug fixes or enhancements.
- **Test on different platforms** and share feedback.
---
## ๐ License
This project is licensed under the **[MIT License](LICENSE)**.
---
## ๐ Acknowledgments
- Built with โค๏ธ using **Rust, Tauri, and Enigo**.
- Inspired by the idea of using **gamepads as full-fledged input devices**.
---