OPEN TO INSPECT. YOURS TO CREATE.

Your payloads.
Your workspace.

Write, check, and build. Everything happens in your browser.

COMPILER TARGETPnP Script v1Local compiler · offline ready
payload.txt
PnP Script
Ln 1, Col 10 charactersUTF-8US
⌘/Ctrl ↵ to build

No account. No uploads. No tracking.

PlugnPwn on GitHub ↗
FROM SOURCE TO DEVICE

A little code.
A lot of possibility.

  1. Write your payload.

    Start with an example or open a UTF-8 text file. The reference panel lists the syntax available in PnP Script v1. Select the keyboard layout used on the target computer.

  2. Build and check.

    Build payload checks every line locally. Fix any errors before downloading. A change to the source clears the previous binary.

  3. Save your work.

    Save source keeps your editable .txt file. Download inject.bin gives you the compiled bytes. These are separate files.

  4. Use it on your own setup.

    The planned firmware exposes the installed microSD card as USB storage. Copy inject.bin to its root, safely eject, then unplug and reconnect. Firmware and device validation are pending; the language guide explains the planned button behavior and overrides. Use automation only on computers you own or have permission to test.

    Firmware flashing is separate: hold the button before connecting USB, then copy a firmware .uf2 file to the bootloader volume. No microSD card is required for flashing. That volume is not for inject.bin.

Work offline, too.

Once “Available offline” appears, you can reopen Studio without a connection. Use your browser’s install or Add to Dock option where supported. Downloads and optional draft storage stay on this device.

Keyboard: ⌘/Ctrl Enter builds · ⌘/Ctrl S saves source · ⌘/Ctrl F searches within the editor. Tab moves between controls; Escape closes a dialog.

LOCAL BY DESIGN

Your source stays
in your browser.

Editing and compilation take place on this device. Studio has no account system, analytics, remote compiler, or payload upload endpoint. It does not connect to USB hardware or run your source.

Draft storage is off by default. If you enable it, this browser stores one draft locally. Anyone using this browser profile may be able to read it. “Forget draft” removes Studio’s saved draft; downloaded files are yours to manage.

The app caches its own files for offline use. Your hosting provider may log ordinary requests for these files. Opening an external link follows that website’s privacy policy.

Studio 1.0 implements PnP Script for PlugnPwn. The language guide documents supported syntax, device behavior and explicit limits. A successful build is not a substitute for checking your payload on your own hardware.

Studio source code is MIT licensed. PlugnPwn brand artwork has separate rights. A public source repository will be linked when published. Software license ↗ · Dependency notices ↗ · Keyboard data license ↗

Replace this source?

Save source first if you want to keep a copy.