Observed since 21 Oct, 09:38 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Move application state between devices without an account or cloud sync.
Move application state between devices without an account or cloud sync.
A TypeScript library for the moment something is here and should be there — once. The state becomes a self-contained URL artifact; show it as a QR code or send the link. No account, no sync engine, no Handoff server.
Transfer is not sync.
pnpm add @0xsarwagya/handoff
On the device that has the state:
import { createHandoff } from "@0xsarwagya/handoff";
const handoff = createHandoff({ receiveUrl: "https://app.example/receive" });
const offer = await handoff.create({ type: "draft", text: "finish on my phone" });
offer.url; // https://app.example/receive#handoff=ho1_…
offer.artifact; // render this as a QR code
offer.qrFriendly; // true while it will actually scan
On the device that wants it:
const state = await handoff.receive(); // reads the current location
The whole artifact is the capability: anyone with the complete link or QR payload can receive its contents. Treat it like the state itself.
Experimental. The v1 wire protocol is versioned and pinned by test vectors; inline transfer is proven across Chromium, Firefox, and WebKit in CI. Physical-device QR testing is tracked in the compatibility docs.
https://oss.sarwagya.wtf/handoff/docs
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 0.1.0Registry latest | 5 Jul 2026 | 6 |
This describes our collected data; it is not a security assessment.
Observed since 21 Oct, 09:38 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:7917f319ad7e1d6545da4f11133718a46ad6b06afea027813913f6ebd39c3313