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.1.tar.gz (46.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.1-py3-none-any.whl (49.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: local_control-0.1.1.tar.gz
  • Upload date:
  • Size: 46.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.1.tar.gz
Algorithm Hash digest
SHA256 b42467c262bad45aafff208c891fd073858184d1a33119065aa527f594d11b50
MD5 1be095bc4acf0dedaaf7e2001ac65279
BLAKE2b-256 ad28df42eba1975474e1ea478eafe07d370ed5ece6ba56531575f36f59e6e5e6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: local_control-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 49.0 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 651c495e2cb03f5ecc5e7a986f2380a8dea65e42f23da689b3f04c865e285a67
MD5 6804a15588ca69946f28c1b5b8576a31
BLAKE2b-256 07f1c87e1b913ee09786cf893152e21dc9b9dd6f2e9416189795d122f1e243bd

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