Raxol.Plugins.MarketplaceClient (Raxol v2.0.1)

View Source

Plugin Marketplace client for Plugin System v2.0.

Features:

  • Plugin discovery and search
  • Version management and updates
  • Security verification and signatures
  • Dependency resolution integration
  • User reviews and ratings
  • Installation and uninstallation
  • License compliance checking

Summary

Functions

Checks for available updates for installed plugins.

Returns a specification to start this module under a supervisor.

Gets detailed information about a specific plugin.

Gets user reviews and ratings for a plugin.

Downloads and installs a plugin from the marketplace.

Lists installed plugins with their marketplace status.

Lists all available versions of a plugin.

Searches for plugins in the marketplace.

Submits a review for a plugin (requires authentication).

Uninstalls a plugin and cleans up dependencies.

Updates a plugin to the latest version.

Verifies plugin signature and security.

Types

marketplace_plugin()

@type marketplace_plugin() :: %{
  id: plugin_id(),
  name: String.t(),
  version: version(),
  description: String.t(),
  author: String.t(),
  license: String.t(),
  category: String.t(),
  tags: [String.t()],
  rating: float(),
  downloads: non_neg_integer(),
  repository: String.t(),
  documentation: String.t(),
  screenshots: [String.t()],
  dependencies: [String.t()],
  api_compatibility: String.t(),
  trust_level: :trusted | :verified | :community | :unverified,
  signature: String.t() | nil,
  checksum: String.t(),
  size_bytes: non_neg_integer(),
  published_at: DateTime.t(),
  updated_at: DateTime.t()
}

plugin_id()

@type plugin_id() :: String.t()

search_filters()

@type search_filters() :: %{
  category: String.t() | nil,
  author: String.t() | nil,
  rating_min: float() | nil,
  license: String.t() | nil,
  tags: [String.t()] | nil,
  compatibility: String.t() | nil
}

version()

@type version() :: String.t()

Functions

check_for_updates()

Checks for available updates for installed plugins.

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

get_plugin_info(plugin_id, version \\ "latest")

Gets detailed information about a specific plugin.

get_plugin_reviews(plugin_id)

Gets user reviews and ratings for a plugin.

handle_manager_cast(msg, state)

Callback implementation for Raxol.Core.Behaviours.BaseManager.handle_manager_cast/2.

install_plugin(plugin_id, version \\ "latest", opts \\ %{})

Downloads and installs a plugin from the marketplace.

list_installed_plugins()

Lists installed plugins with their marketplace status.

list_plugin_versions(plugin_id)

Lists all available versions of a plugin.

search_plugins(query, filters \\ %{})

Searches for plugins in the marketplace.

start_link(init_opts \\ [])

submit_plugin_review(plugin_id, rating, review_text)

Submits a review for a plugin (requires authentication).

uninstall_plugin(plugin_id)

Uninstalls a plugin and cleans up dependencies.

update_plugin(plugin_id, opts \\ %{})

Updates a plugin to the latest version.

verify_plugin_security(plugin_id, version)

Verifies plugin signature and security.