explaingit

h-m-h/weylus

9,180RustAudience · developerComplexity · 3/5Setup · moderate

TLDR

Turns any tablet or smartphone into a drawing tablet and touch input device for your desktop computer, just run the app on your computer and open a URL in the tablet's browser.

Mindmap

mindmap
  root((weylus))
    What it does
      Tablet as input device
      Screen mirroring
      No tablet app needed
    Features
      Stylus pressure
      Multi-touch
      Extended display
    Platform support
      Linux full features
      macOS and Windows
      Browser-based
    Audience
      Linux artists
      Desktop users
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Use an iPad or Android tablet as a pressure-sensitive drawing tablet for apps like Krita or Xournal++ on Linux.

USE CASE 2

Mirror your desktop screen to a tablet and control it with touch gestures, without installing any special app on the tablet.

USE CASE 3

Use your tablet as an extended second display on Linux for extra screen space.

USE CASE 4

Run Weylus headless from the command line on Linux so a tablet can always connect without any graphical interface.

Tech stack

Rust

Getting it running

Difficulty · moderate Time to first run · 30min

On Linux, requires configuring system permissions for virtual input events, connection is unencrypted so use only on trusted local networks.

In plain English

Weylus is a tool that lets you use a tablet or smartphone as a drawing tablet and touch input device for your desktop computer. You install Weylus on your computer, run it, and then open a web address in the browser on your tablet. No special app is required on the tablet side: any modern browser works, including Safari on iPadOS 13 or later and Firefox 80 or later on Android. Once connected, you can control your computer's mouse pointer using the tablet's touchscreen. Your computer's screen is mirrored to the tablet so you can see what you are doing. If your tablet has a stylus, and you are on Linux, Weylus passes the pen pressure and tilt data through to drawing applications like Krita or Xournal++, making it usable as a proper artist's input device. Multi-touch gestures also work on Linux. On Linux there are additional capabilities beyond what Windows and macOS support. You can capture a specific application window instead of mirroring the whole screen, use your tablet as an extended second display rather than just a mirror, and benefit from faster screen streaming. Hardware-accelerated video encoding is available on all platforms through the computer's GPU, which reduces the latency of the screen feed. Setting up Weylus involves downloading the release for your operating system and, on Linux, configuring the system to allow Weylus to generate input events. The README walks through the required commands for that. The program can also be run headless from the command line without a graphical interface, which is useful for automated setups. Weylus is written in Rust and is available as pre-built binaries for Linux, macOS, and Windows. Linux users can also install it through the Arch User Repository. The project notes that it should only be used on trusted networks because the connection between the computer and tablet is not encrypted by default.

Copy-paste prompts

Prompt 1
Help me set up Weylus on Ubuntu so I can use my iPad as a drawing tablet in Krita, including all the udev input permissions steps.
Prompt 2
Show me the Linux system commands needed to configure permissions so Weylus can generate virtual input events on my machine.
Prompt 3
How do I build Weylus from source on Arch Linux, including the Rust dependencies needed for GPU-accelerated screen streaming?
Prompt 4
Help me write a systemd service file that starts Weylus headlessly at boot so my tablet can connect to my desktop without me opening a GUI.
Open on GitHub → Explain another repo

← h-m-h on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.