Everything optional is a plugin: an npm package @webship.co/workspace-<name>, from the repository github.com/webship/workspace-<name> on branch 1.0.x. The core requires none of them. A plugin requires nothing from the dashboard's files; it is handed an api and works through it, so it can be installed from npm and removed without a trace.
The four steps
| Step | Command | What happens |
|---|---|---|
| require | webship-workspace plugin require <name> |
npm install @webship.co/workspace-<name> into core/workspace-app/package.json |
| activate | webship-workspace plugin activate <name> |
plugins.<name>.enabled: true in settings.yml; a workspace plugin also joins the workspaces: list |
| install | webship-workspace plugin install <name> |
places what the manifest names: bash functions, commands, compose files, themes, a workspace folder, a settings template, AI agents; recorded in core/config/plugins.installed.yml |
| configure | webship-workspace plugin configure <name> |
its own core/config/plugin.<name>.settings.yml |
The same four are buttons on Settings → Plugins, below the catalogue. deactivate turns one off and keeps its files; uninstall removes what install placed. bash core/scripts/plugins.sh --list says the step each plugin is at.
Families
Plugins that do the same job for different services share a base package, so a provider is thin and the surface is one:
- Hosting —
@webship.co/workspace-hosting: one button per provider, with environments and live URLs, get the database and files, deploy, logs, activities and the console. Providers: upsun, acquia, digitalocean, cpanel, aws, azure, godaddy. - Forges —
@webship.co/workspace-forge: the repository, open issues and pull or merge requests, a request from the current branch, the clone option, and the credential the dashboard uses for the host. Providers: github, gitlab, bitbucket. - Container runtimes —
@webship.co/workspace-container: a menu for projects on Docker Compose, Lando, Docksal, Podman or Kubernetes. - Platforms — one plugin per platform: its builder and tools (
cmd-<platform>-project.sh,cmd-tools-<platform>-cli.sh), its default accounts, its step pack wired into the testing setup, and its AI agents, placed in the AI Agents folder.workspace-wordpressis the first. - Workspace folders — the folder itself as a plugin: its settings file, its commands, its docs. Activating one lists it on the dashboard.
Writing one
Read PLUGINS.md: the manifest (workspacePlugin in package.json), register(api), the hooks (row menus, pages, fragments, actions, chips, folder setup, forges, open-with, workspace views) and api.lib. Types come from @webship.co/workspace-plugin-api. The reference plugins are workspace-upsun (a hosting provider), workspace-github (a forge), workspace-lando (a runtime), workspace-drupal-modules (a workspace folder) and workspace-wordpress (a platform); each has tests, a features/*.feature the installer places under the dashboard's browser suite, and a CI workflow.
The catalogue
63 plugins, each its own npm package and repository. Every page below is the plugin's own README.
Platforms
One platform each: the command that builds it in a container, its default accounts, its step pack in the testing setup and its AI agents.
@webship.co/workspace-drupal
@webship.co/workspace-drupal-cms
@webship.co/workspace-wordpress
@webship.co/workspace-joomla
@webship.co/workspace-magento
@webship.co/workspace-typo3
@webship.co/workspace-backdrop-cms
@webship.co/workspace-craft-cms
@webship.co/workspace-ghost
@webship.co/workspace-django-cms
@webship.co/workspace-odoo
@webship.co/workspace-prestashop
@webship.co/workspace-gatsby
@webship.co/workspace-astro
Workspace folders
The folder itself as a plugin: its settings file, its commands and its docs.
@webship.co/workspace-ai-agents
@webship.co/workspace-ai-commands
@webship.co/workspace-ai-prompts
@webship.co/workspace-ai-skills
@webship.co/workspace-audio
@webship.co/workspace-avatar
@webship.co/workspace-demos
@webship.co/workspace-designs
@webship.co/workspace-dev
@webship.co/workspace-docs
@webship.co/workspace-drupal-modules
@webship.co/workspace-drupal-profiles
@webship.co/workspace-drupal-recipes
@webship.co/workspace-drupal-site-templates
@webship.co/workspace-drupal-themes
@webship.co/workspace-images
@webship.co/workspace-libraries
@webship.co/workspace-products
@webship.co/workspace-projects
@webship.co/workspace-rag
@webship.co/workspace-sandboxes
@webship.co/workspace-specs
@webship.co/workspace-test
@webship.co/workspace-video
@webship.co/workspace-worklogs
Hosting providers
One menu per provider: environments and live sites, deploy, get the database and files.
@webship.co/workspace-acquia
@webship.co/workspace-aws
@webship.co/workspace-azure
@webship.co/workspace-cpanel
@webship.co/workspace-digitalocean
@webship.co/workspace-godaddy
@webship.co/workspace-upsun
Git forges
The repository, its issues and pull or merge requests, and the credential for the host.
@webship.co/workspace-bitbucket
@webship.co/workspace-github
@webship.co/workspace-gitlab
Container runtimes
A menu for projects that run on something other than DDEV.
@webship.co/workspace-docker
@webship.co/workspace-docksal
@webship.co/workspace-graph
@webship.co/workspace-jira
@webship.co/workspace-kubernetes
@webship.co/workspace-lando
@webship.co/workspace-podman
Features
Optional features of the dashboard.
@webship.co/workspace-git
@webship.co/workspace-google-drive
@webship.co/workspace-ide
Plugin API and family bases
What plugin authors build on: the types and the shared base of each family.
@webship.co/workspace-container
@webship.co/workspace-forge
@webship.co/workspace-hosting
@webship.co/workspace-plugin-api