Get started with LPM.dev Registry

Install LPM CLI, sign in, and publish a private package. Moving a package to the Pool or Marketplace is a separate choice you make after the first publish.

1. Install LPM CLI

npm install -g @lpm-registry/cli

Homebrew and standalone installers are also available. See Installation for every supported platform.

2. Sign in

lpm login
lpm whoami

lpm login opens a browser and stores the resulting LPM.dev Registry session securely. LPM CLI uses this session directly; you do not need a project .npmrc to publish or install with LPM CLI.

3. Prepare a package

JavaScript

LPM.dev Registry package names use @lpm.dev/<owner>.<package>:

{
  "name": "@lpm.dev/your-username.my-utils",
  "version": "1.0.0",
  "description": "Small utilities shared across my projects"
}

The owner must be your LPM.dev username or an organization where you can publish.

Swift

Swift packages need both files at the project root:

  • Package.swift, which describes the Swift package.
  • package.json, which supplies the LPM.dev Registry name and version.
{
  "name": "@lpm.dev/your-username.my-swift-library",
  "version": "1.0.0"
}

LPM CLI detects Package.swift, reads the manifest with Swift Package Manager, and publishes the package as Swift.

4. Check and publish

lpm publish --check
lpm publish

--check runs local package validation, secret scanning, and the quality score without uploading. The publish then sends the package to LPM.dev Registry for ownership, version, manifest, storage, and distribution validation.

New packages are private. After a successful private publish, the package is available to you or your organization at:

https://lpm.dev/your-username.my-utils

Pool and Marketplace packages have an additional publication review. A successful upload enters review; it does not make an unreviewed version public.

5. Install the package

From another project:

lpm install @lpm.dev/your-username.my-utils

Use the same command for a Swift dependency. LPM CLI edits Package.swift, configures the lpmdev Swift Package Manager registry scope when needed, and resolves the dependency.

If a JavaScript project must also work with npm, pnpm, or yarn, create a separate read-only .npmrc credential:

lpm setup local

See Authentication for the difference between the LPM CLI session and .npmrc credentials.

Verify the setup

lpm doctor
lpm doctor --all

lpm doctor runs the fast local-health checks. lpm doctor --all adds Registry connectivity, authentication, and the complete diagnostic catalog.

Continue

  • Installation — Installation channels, supported platforms, updates, and verification.
  • Authentication — Local sessions, .npmrc, CI credentials, OIDC, and logout.
  • Publishing — Package identity, publish checks, limits, and public-package review.
  • LPM CLI documentation — Complete command, configuration, install, lockfile, and workspace reference.