Skip to main content

LAN-accessible remote control server for mouse, keyboard, and power management

Project description

🖱️ Local Control

Let you steer the computer's mouse, keyboard from any device's browser.

The server is written in pure Python with minimal dependencies and ships with a mobile-friendly frontend.

Features

  • Mouse cursor movement and click controls from touch or mouse devices.
  • Realtime input field streams keystrokes (including Backspace/Delete) as you type.
  • OS-level lock, and shutdown shortcuts (best-effort across Windows, macOS, Linux).
  • Authentication that reuses the current OS account credentials, remembers trusted devices, and rate-limits brute-force attempts.
  • Build with GPT-5-Codex, easy to customize and modify with vibe coding.

Requirements

  • Python 3.9 or newer.
  • Desktop environments capable of receiving simulated input (X11/Wayland, Windows, or macOS).
  • Linux/X11 hosts require the libX11 and libXtst system libraries (commonly present on desktop distributions; Wayland sessions need XWayland support).
  • macOS hosts must grant the Python process accessibility permissions (System Settings → Privacy & Security → Accessibility).

Installation

pip install local_control

Usage

local-control --help
local-control --port 4001

Open http://<host-ip>:4001 from your phone, tablet, or another computer on the same LAN. Sign in with the current desktop user's username and password. Devices marked as trusted skip future logins under the same secret.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

local_control-0.1.5.tar.gz (40.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

local_control-0.1.5-py3-none-any.whl (42.9 kB view details)

Uploaded Python 3

File details

Details for the file local_control-0.1.5.tar.gz.

File metadata

  • Download URL: local_control-0.1.5.tar.gz
  • Upload date:
  • Size: 40.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.7

File hashes

Hashes for local_control-0.1.5.tar.gz
Algorithm Hash digest
SHA256 16b08238f5d05c287ee7c9aebd5d67b1140994a391d30b9d1e65d8573036adb1
MD5 8aa6da9f3ed8023ee59beecdacd2d65c
BLAKE2b-256 4e4c90afe749d779a3c7ea35792605feb77a564c6f05476c5d8cbd2be368f74a

See more details on using hashes here.

File details

Details for the file local_control-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: local_control-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 42.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.7

File hashes

Hashes for local_control-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 ce6bd1df73b7aa8a1b3f51a5f5d4f2a9e706d7083eab0bdc1e343268a35ee9d0
MD5 b446eb80ca8457837954d9a003b83052
BLAKE2b-256 43ddc6519d85a325aa852449a4499015e9d2c25d6e85d40e48ae3e53090d82d4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page