Use the CLI
Install and sign in
Install the ledable command and sign in to your LEDABLE account.
The ledable command does what the LEDABLE phone app does: it signs in, sets up a display over
Bluetooth, installs apps from the store, arranges the playlist and changes settings. Its commands
run the app's own pages, so they decide and refuse exactly what the app would. It is also the tool
for building and publishing apps.
Install
The CLI needs Node.js 24.18 or later. It runs on macOS, Windows and Linux, each on x64 and Arm64.
npm install -g @ledable/cli
ledable --versionledable --help lists every command, and ledable <group> <command> --help shows one command's
arguments and options. The command reference has the same text.
When a newer version is out, the CLI says so on stderr after a command, at most once a day. Run
the same npm install -g @ledable/cli to update.
Bluetooth
Only setting up a display uses Bluetooth: the ble and
wifi commands. Everything else goes through LEDABLE's
servers, so it works wherever your computer is online. Before you set up a display, check that
Bluetooth works on your system:
- macOS. npm installs the Bluetooth module for your Mac with the CLI. The first time a command
uses Bluetooth, macOS asks whether your terminal app may use it. If you declined, the command
fails with
Bluetooth adapter is unauthorized; allow your terminal app under System Settings → Privacy & Security → Bluetooth. - Windows. npm installs the Bluetooth module for your PC with the CLI. Turn Bluetooth on in Settings.
- Linux. The CLI talks to BlueZ, the Linux Bluetooth service, over the system D-Bus, so it
needs no native module. The
bluetoothservice must be running with an adapter powered on.
A command that finds the radio switched off fails with Bluetooth adapter is poweredOff.
Sign in
Sign in with your email address. An address that has no account yet gets one.
ledable auth login you@example.comThe CLI emails you a sign-in link, shows a short code and waits:
Sent a sign-in link to you@example.com
Open it and pick the code K7
Waiting for the pick. Or type the one-time code from that page.
Code:Open the link on any device. The page names the LEDABLE CLI as what wants to sign in and offers
three codes: pick the one your terminal shows. A wrong pick, or "I didn't ask to sign in", cancels
the request; run auth login again to start over. Once you pick the right code, the terminal
carries on by itself and prints the account it signed in to:
{
"user_id": "…",
"email": "you@example.com"
}With the one-time code
If the terminal keeps waiting after you picked the code, the page offers a one-time code under
"Device still waiting?". Type it at the Code: prompt; spaces, dashes and case do not matter. A
wrong code is said and the prompt asks again.
Where no one is at a terminal, pass
--code-stdin and pipe the code in: the command reads it
from one line of stdin. It writes Sent a sign-in link… to stderr in either mode, so a script knows
when the mail has gone out. Without a terminal and without --code-stdin, the command waits for
the pick alone.
Check who you are
ledable auth whoamiauth whoami prints your profile: your nickname, email
address and when the account was created. A command that needs an account while you are signed
out stops with Sign in with ledable auth login first.
You can be signed in to several accounts on one computer and switch between them; see Several accounts.
Sign out
ledable auth logoutauth logout signs this computer out of the current
account, ends the session on LEDABLE's servers and removes the account's credentials and cached
displays from this computer. It prints the account it signed out of:
{
"signed_out": "…"
}Other accounts signed in here stay signed in. Next, set up a display.