Overview
The architecture of Joa can be a bit confusing, so lets try to clear it up a bit with this diagram.
Steps are a collection of providers, providers provide search results.
When you launch Joa via the hotkey, and start typing, the search results that you see can come from multiple different providers. Together they are known as the global step.
There are multiple ways you can add a provider to a step. For example if you want to
add a provider to the global step, you need to call the AddGlobalProvider
method on
the IPluginBuilder
. The search result that this provider provides will then appear in the
global step. The global step is special, if you want to create another step, you can do this via
the AddStepBuilder
method on the IExecutionContext
. On the IStepBuilder
you can then add
providers with the AddProvider
method.