All docs
Buy & install
Browse the store, buy a package in your browser, then Open in LSD to install it — and see its owned and installed states in the app.
Getting a package from the marketplace is three steps: browse, buy in the browser, then Open in LSD to install. Free packages skip the middle step.
Browse#
Two front doors to the same catalog:
- The desktop Package Manager → Store filter, which fetches the catalog and marks what you own.
- The web store in your browser.
Each listing shows the package, its versions, its plans, and its dependencies.
Buy in the browser#
Payment happens on the web store page — not inside the app. On a paid package the Package Manager's Buy button opens that store page in your browser, where you pick a plan, choose a seat quantity, and check out. See Plans & licensing.
Free (and already-owned) packages need no checkout — they Install directly from the Package Manager.
Open in LSD → install#
After a purchase, the store page offers Open in LSD — a deep link that hands the desktop app the exact package and build you bought:
# → lsd://store/lsd-widgets?action=install&version=1.0.0
Preview channels use their registered scheme (for example lsd-alpha://…), so the website must
be configured for the same desktop channel.
LSD fetches authenticated metadata for that exact version, including a digest-bound, dependency-first list of every exact build and examples archive needed for the install. It verifies all downloads, then rechecks the graph immediately before changing anything; an entitled older version therefore remains reproducible after a newer release supersedes it. LSD asks you to confirm the package, version, and target first. If a project is active, the app installs and enables the package there. If no project is open (or you are in Hub), it installs the package and opens Hub Examples filtered to that package, with its declared default example selected.
Every published Store version must include at least one runnable project, script, or notebook
example and exactly one default. The example index and archive digest are bound into the signed
package, so Hub never has to guess which files are examples and never runs an edited cache copy as
publisher-authored content. Data examples may accompany the package, but do not satisfy the
runnable-example requirement.
From then on, activating the package issues its signed lease so it runs — offline within the lease window for sealed and source deliveries.
Owned and installed states#
The Package Manager distinguishes two states, and a package can be in one without the other:
- Owned — you hold an entitlement (bought, or free). Shown against the store catalog.
- Installed — the code is present on this machine, ready to enable in a project.
So a package you bought on one machine shows as owned on another before you install it there; a free package can be installed and owned at once. Enabling an installed package in a project is the usual Package Manager switch.
Related#
Learn — The Package Manager · Plans & licensing · Collaboration & seats
API — PackageManager · lsd_package.json
Examples — A complete package
Frequently asked questions
Why does buying open my browser?
Checkout and payment happen on the secure web store page, not inside the app. Once the purchase completes, an "Open in LSD" deep link hands the exact build back to the desktop app to install.
What is the difference between owned and installed?
Owned means you have an entitlement to the package (you bought it or it is free). Installed means the code is on this machine and ready to activate. A package can be owned but not yet installed on a given device.