Sandbox — LSD is in active testing. All systems operational·payments are test-mode (no real charges).
Overview Use Cases News Docs Tool Store Support Community Get LSD
All docs
Docs/ Packages/ Plans & licensing
Packages

Plans & licensing

Price a paid package: one-time or subscription plans, concurrent seats bought by quantity, offline leases, and sealed/source/server delivery.

TL;DRA paid package has one or more plans. A plan is one-time (perpetual) or a subscription, grants a number of concurrent seats, and picks a delivery mode — sealed, source, or server. Buyers choose a seat quantity at checkout (price × N users). Activated packages carry a signed 30-day lease so they keep working offline.

A paid package is sold through one or more plans. A plan sets how the buyer pays, how many people can use it at once, and how the code is delivered.

One-time vs subscription#

Every plan is one of two kinds:

  • One-time (perpetual) — a single purchase that never expires.
  • Subscription — a recurring charge over a period; access lapses if it isn't renewed.

A package can offer both — for example a perpetual plan and a monthly subscription — and the buyer picks one at checkout.

Concurrent seats#

A plan grants a number of concurrent seats. A seat is one live device using the package at the same time — not a named user, and not a total install count. A 3-seat plan lets up to three connected devices run the package concurrently; the host enforces the limit live (see Collaboration & seats). A seat count of 0 means unlimited.

Buying seats by quantity#

At checkout the buyer chooses a seat quantity, and the price scales with it:

text
# → total = plan price × N users
# → a 1-seat plan bought ×3 → entitles 3 concurrent seats

Re-buying at a higher quantity upgrades the entitlement.

Offline leases#

Activating a paid package issues a signed lease valid for 30 days. While the lease verifies, the package runs offline — no per-run server call. The lease is checked against a cached copy of the store's signing keys, must match the device it was issued to, and is guarded against clock roll-back (a high-water-mark of the newest server time seen). When the lease expires, the client re-activates; a revoked entitlement or a lapsed subscription then fails and the package freezes — so changes bite within the lease window without any always-on connection.

Delivery: sealed, source, or server#

Each plan picks how the code reaches the buyer:

Delivery What ships Protection
sealed Encrypted .lsdpkg bytecode, device-keyed Strong deterrent (locally-run code is decompilable)
source Readable source, on purpose None — for open or trusted packages
server Nothing sensitive; the code runs on the store's servers The only true anti-theft — crown-jewel logic never ships

Choose server delivery when the package's logic must never leave your control; the buyer's steps call your server and only results come back. Otherwise sealed is the common default for paid packages, and source for packages you are happy to ship openly.

LearnPublish to the store · Buy & install · Collaboration & seats

APIlsd_package.json · PackageManager

ExamplesA complete package

Frequently asked questions

What is a seat?

A seat is one live device using the package at the same time. A plan with 3 seats lets up to three connected devices run it concurrently; a fourth device makes the host freeze the package until one disconnects. Seats of 0 mean unlimited.

Does a paid package need the internet to run?

Not continuously. Activation issues a signed lease valid for 30 days, so sealed and source packages run offline within that window. A revoked entitlement or a lapsed subscription bites within the lease period. Server-delivery packages do need the server, by design.

By LSD Team · Last updated Jul 17, 2026 Ask on Discord View as Markdown