Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Publish a release

  1. Open Account and enter your email address.
  2. Enter the 16-character sign-in code from your email to sign in.
  3. Claim a publisher name and prepare a package with that publisher in its ID.
  4. Upload your .memona-plugin package in the publisher dashboard.
  5. After automatic validation succeeds, the release appears in the public catalog.

Email is delivered through Resend. Codes expire after 15 minutes, have a limited number of attempts and can only be consumed once. Entering the code confirms sign-in; email scanners cannot consume it by following a link.

Signing in does not require a publisher name. Readers can like public plugins with a verified account and claim a publisher name later when they want to publish. Each account contributes at most one like to a plugin; clicking an active like removes it.

Public profile

Your publisher name is permanent and forms the first part of each plugin ID. After claiming it, edit your display name, biography and optional website in Account. Display names allow up to 80 characters, biographies 2,000 and website URLs 2,048. Websites must use HTTP or HTTPS.

Your public page at /publishers/your-publisher shows these fields, your joined date and public plugins. Your email address and account ID stay private. A plugin with no available release does not appear among your public plugins.

What validation checks

The store checks account ownership, archive structure and limits, the manifest, component validity, supported imports and the filesystem interface. It never runs a publisher’s component during validation. Memona repeats package and digest validation when installing.

Automatic validation is not a source-code review. Email verification confirms control of an address; it does not certify a developer’s identity or behavior.

Releases and updates

Versions are immutable. Upload a new semantic version for a fix, even if the old version has been withdrawn. Users select and install releases inside Memona’s Plugins dialog; website links do not automatically install code.

Describe connection requirements and supported operations clearly. Include license information and a README in the package. Do not embed private service credentials, publisher sessions or verification tokens.

Keep API compatibility separate from your plugin’s release number. A new plugin release can continue using the same Memona WIT API. A component requiring an unsupported API cannot be installed until Memona supports that contract.

Downloads and activity

Plugin pages show lifetime downloads and daily UTC activity. A download means an accepted package GET request whose artifact was successfully opened. It does not prove that the transfer finished or that Memona installed the plugin, and repeated requests from the same person count separately. HEAD requests, unavailable artifacts and withdrawn downloads do not increment the counters.

Lifetime and daily counters update together. Existing lifetime totals remain when daily tracking begins. Dates before tracking began are marked Not tracked; tracked dates with no requests show zero. The history endpoint supports 1–365 days and reports when tracking began. No historical downloads are invented to fill earlier dates.