Appearance
Developer Documentation
This is the developer-facing documentation for the plugins in this repository. It assumes you're already familiar with Cofoundry itself (page templates, page blocks, custom entities, the domain/query-command pattern, permissions, dependency registration, etc.) — the official Cofoundry documentation covers all of that. These docs only cover what's specific to the plugins built in this repo.
Plugins
- PeachGrove Admin (
Plugins.Admin) — the admin back office and its API, branded "PeachGrove". Adds the Dashboard SPA and the Visual Editor to a Cofoundry site. - Admin.Web workspace — the Angular workspace that builds the Dashboard and Visual Editor front-ends consumed by
Plugins.Admin. - PeachImage imaging plugin (
Plugins.Imaging.PeachImage) — swaps in the PeachImage library for image asset encoding/resizing. - R2 storage plugin (
Plugins.Storage.R2) — swaps in Cloudflare R2 (via the S3 SDK) as the file storage backend.
Reference
- Example site — a working Cofoundry site referencing all of the above, useful as a template for your own integration.
How the plugins fit together
Every plugin in this repo is a Cofoundry auto-registered plugin: each is a class library that implements IDependencyRegistration and gets picked up automatically by AddCofoundry()'s assembly scanning, and any settings class inherits PluginConfigurationSettingsBase and is bound from its own Cofoundry:Plugins:* configuration section. In practice this means integrating a plugin is almost always just:
- Add a package/project reference to the plugin.
- Add its configuration section to
appsettings.json(if it has one). - Call
AddCofoundry(...)as normal — no manual plugin registration calls are needed.
None of these plugins are on a public NuGet feed; consuming projects should reference them from wherever your organization publishes internal packages, or via a local ProjectReference during development (see how the example site does this).