FlowPack is a .NET packaging utility for building, packaging, and distributing FlowSynx's plugins. It takes a .NET project, compiles it, generates metadata, and bundles it into a distributable .fspack file.
- Build and package a .csproj plugin into a .fspack archive.
- Extracts plugin metadata automatically.
- Generates SHA256 checksums.
- Produces
.fspackfiles for easy distribution. - Supports clean builds and verbose output.
- Includes a plugin loader for dynamic plugin loading/unloading.
- Simple CLI
Download the latest version of FlowPack from the Release page and extract it.
flowpack [options] <project.csproj>| Option | Description |
|---|---|
--output <path> |
Specify the output .fspack file path. Defaults to ./<project>.fspack. |
--clean |
Perform a clean build before packaging. |
--verbose |
Enable verbose logging. |
--help, -h |
Show help information. |
--version, -v |
Display the version of FlowPack. |
flowpack --output MyPlugin.fspack --clean --verbose ./src/MyPlugin/MyPlugin.csprojThis will:
- Clean and build the
MyPlugin.csprojin Release mode. - Publish the plugin.
- Package it as
MyPlugin.fspack.
A .fspack file is a ZIP archive containing:
<PluginName>.plugin- The compiled plugin DLLs and dependencies.manifest.json- Metadata about the plugin.<PluginName>.plugin.sha256- SHA256 checksum of the plugin file.
The manifest.json file contains metadata like:
{
"Id": "b2f5ff47-2fc6-4bdb-8c73-9d69f4e1f94d",
"Type": "DataProcessor",
"Version": "1.0.0",
"CompanyName": "YourCompany",
"Description": "A sample plugin for processing data.",
"License": "MIT",
"LicenseUrl": "https://opensource.org/licenses/MIT",
"Authors": ["Jane Doe"],
"Tags": ["data", "processor", "plugin"],
"CategoryId": "Data",
"MinimumFlowSynxVersion": "1.0.0"
}- FlowSynx.PluginCore: Core interfaces for FlowSynx plugin systems.
This project is licensed under the MIT License. See LICENSE for details.
Contributions are welcome! Please open an issue or submit a pull request.
For questions or issues, please create an issue on the GitHub repository.