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.2.tar.gz (47.0 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.2-py3-none-any.whl (49.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: local_control-0.1.2.tar.gz
  • Upload date:
  • Size: 47.0 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.2.tar.gz
Algorithm Hash digest
SHA256 f9db9d283df56f658e0384af907f3c7b6579f5ed0359d86b628cb8cc40b99a9f
MD5 1be6ae4a2216c3a0db48eb12f0c70f2e
BLAKE2b-256 925a64e9f727a620d498b475afa2cbfd9b5ef8d060d7bbfd39afb1d782e9f09f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: local_control-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 49.5 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9f849c7666e719bc263a21f02d32f25924bfc0d16cdd94ba19bbe88704e9f30f
MD5 83de7712c4a2f97058c956164091fb65
BLAKE2b-256 3394dc441e9278280878c55d5516c42da5f45f0a75b799cf05a9f3e52c763283

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