plugify
1.0.0.0
|
Welcome to Plugify, a modular plugin system designed for extensibility and flexibility. This documentation provides guidelines on creating language modules for Plugify.
Plugify seamlessly integrates with a package manager, a tool that automates the process of installing, upgrading, configuring, and removing packages (plugins and language modules) in a consistent manner. Each plugin and language module is considered a package, and the package manager simplifies the management of these components.
Every plugin and language module contains information about itself in an update URL section. The update URL is a path to a JSON file structured like this:
name
: The name of the plugin or language module.type
: The type of the package.author
: The author or creator of the package.description
: A brief description of the package.versions
: An array containing information about available versions.version
: The version number of the package.checksum
: Checksum for verification (optional).download
: URL for downloading the package.platforms
: Platforms supported by the package.Package managers can leverage this information to facilitate various tasks:
By providing structured package information, users can manage plugins and language modules efficiently using their preferred package manager.
To control the package manager, you need to access the IPackageManager
from IPlugifyProvider
. The IPlugifyProvider
interface, representing the provider for Plugify, allows you to interact with various components of the system, including the package manager.
To access the package manager, obtain a reference to it through the IPlugifyProvider
. Once you have a reference, you can control and manage packages using the provided methods.
Before interacting with the package manager, ensure that the plugin manager is unloaded. Loaded plugins may hold files in use, preventing certain operations like removal or modification. Additionally, it is recommended to perform these operations in a controlled environment.
Plugins and language modules in Plugify have specific package types:
By adhering to these package type guidelines, you ensure that each package is correctly identified and processed by the package manager in Plugify.