lanyell
v0.6.1
Published
LAN message board. npx lanyell and anyone on your WiFi can post messages that show up live on every screen — scan the terminal QR code to join.
Downloads
465
Maintainers
Readme
A LAN message board. Run one command and anyone on your WiFi can post messages that show up live on every screen.
Website: https://boomsi.github.io/lanyell/
Usage
npx lanyellOn startup, lanyell prints the local URL plus a terminal QR code — others on your LAN just scan it with their phone to open, no typing required.
Desktop app
Grab the installer from GitHub Releases — lanyell.dmg for macOS, lanyell-setup-*.exe for Windows. Open the dmg and drag lanyell into Applications.
macOS first launch: the app is not code-signed, so Gatekeeper reports it as "damaged" or "from an unidentified developer". It isn't damaged — clear the quarantine flag once:
xattr -cr /Applications/lanyell.app(Signing + notarization needs an Apple Developer account; if you're distributing to a wider audience, that's the proper fix.)
- You: http://localhost:3000
- Others on your LAN: http://<your-LAN-IP>:3000 (or scan the QR code)
If others can't reach it, your OS firewall is likely blocking port 3000 — allow Node through it.
Custom port
npx lanyell --port 8080
# or: npx lanyell -p 8080If the port is already in use or requires root, lanyell prints a clear error instead of crashing silently.
Features
- Live updates via Server-Sent Events — no refresh needed
- Terminal QR code — scan to open on mobile, no typing required
- Auto-growing input — single line by default, expands up to 8 rows; two rows by default on phones
- Fold long messages — long messages clip at 222px with a per-item expand/collapse toggle
- Auto-split long messages — anything past 10,000 characters posts as a linked stack of parts; Copy on any part copies the full original
- File attachments — drag files anywhere on the page, paste screenshots, or use the + button; multi-select works, and they stack above the input as square thumbnails until you send. Images preview inline, everything else gets a type icon, and any attachment downloads in one click (up to 100 MB per file)
- Messages expire after an hour — a message is dropped from the board (and from every open screen) one hour after it was posted
- Per-device colors — each device gets a stable light tint so you can tell senders apart
- Delete messages — anyone can remove a message; the change syncs to every screen instantly
- Responsive — on phone-width screens the input and buttons stack vertically so nothing is cramped
- Custom port —
--port/-pto pick a port; clear errors on conflict or permission - Device id — OS prefix (
iOS/macOS/Windows/ ...) + a persisted random segment - Copy button on every message (works over plain HTTP via
execCommandfallback)
Develop
git clone https://github.com/boomsi/lanyell.git
cd lanyell
npm install
node server.jsTests: npm test (Node's built-in node:test).
Requirements
Node.js >= 18
