Official plugin monorepo for Stoa — headless e-commerce for humans and agents.
Each plugin is an independent Go module. Install only what you need.
| Plugin | Description | Version |
|---|---|---|
n8n |
Workflow automation & cronjobs via n8n | v0.4.0 |
stripe |
stripe payment method | v0.4.0 |
meilisearch |
Typo-tolerant search via Meilisearch | v0.1.0 |
go get github.com/stoa-hq/stoa-plugins/n8n@latestRegister the plugin in your Stoa app (internal/app/app.go):
import n8nplugin "github.com/stoa-hq/stoa-plugins/n8n"
func (a *App) RegisterPlugins() error {
return a.PluginRegistry.Register(n8nplugin.New(), appCtx)
}Full configuration and usage docs: stoa-hq.github.io/docs/plugins
stoa-plugins/
├── n8n/ # Workflow automation via n8n
│ ├── go.mod
│ ├── plugin.go
│ └── ...
├── meilisearch/ # Meilisearch search engine
│ ├── go.mod
│ ├── plugin.go
│ └── ...
├── stripe/ # Stripe payment method
│ ├── go.mod
│ ├── plugin.go
│ └── ...
└── shared/ # Shared utilities (planned)
Each plugin is an independent Go module with its own go.mod, versioned via subdirectory tags (e.g. n8n/v1.0.0).
go work init
go work use ./n8n ./meilisearch ./stripe- Branch from
main:git checkout -b feat/plugin-name - Create a subdirectory with its own
go.mod(module github.com/stoa-hq/stoa-plugins/<name>) - Implement
sdk.Pluginfromgithub.com/stoa-hq/stoa/pkg/sdk - Add tests — every implementation requires test coverage
- Document the plugin in stoa-docs under
docs/plugins/