Skip to content

Ivy-Interactive/Ivy-Tendril-Plugin-Template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ivy Tendril Plugin Template

A template for creating Ivy Tendril plugins.

Getting Started

  1. Clone or use this template repository
  2. Rename Ivy.Tendril.Plugin.Template to your plugin name (e.g., Ivy.Tendril.Plugin.MyPlugin)
  3. Update TemplatePlugin.cs with your plugin logic
  4. Update the .csproj metadata (PackageId, Authors, Description, URLs)

Development

Build the plugin:

dotnet build

Testing Locally

Add your plugin to <TENDRIL_HOME>/plugins/plugin-references.yaml:

- /absolute/path/to/your/plugin/project

Tendril will automatically build and load your plugin. Source file changes trigger hot-reload.

Publishing

To publish to NuGet for marketplace submission:

dotnet pack -c Release
dotnet nuget push bin/Release/*.nupkg --source https://api.nuget.org/v3/index.json --api-key YOUR_KEY

Project Structure

Ivy.Tendril.Plugin.Template/
├── Ivy.Tendril.Plugin.Template.csproj   # Project file with NuGet metadata
├── TemplatePlugin.cs                     # Plugin entry point
└── README.md

Plugin Capabilities

Depending on which abstraction package you reference, your plugin can:

Package Capabilities
Ivy.Tendril.Plugin.Abstractions Messaging channels, TendrilHome access
Ivy.Tendril.Plugin.Extended.Abstractions UI contributions (dialogs, menu items, apps)

To add UI contributions, add the extended package:

dotnet add package Ivy.Tendril.Plugin.Extended.Abstractions

Then cast to ITendrilExtendedPluginContext in your Configure() method.

Resources

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages