Ship the plugin directory redesign and keep registry installs behind a daemon flag (#6080)

* website: plugin page design mockups (four directions, throwaway routes)

* website: final plugin page mockup (A directory, B browse frame, list cards, D detail)

* website: browse pages use a four-column card grid in the final plugin mockup

* feat(plugins): keep registry installs behind a daemon flag, off by default

Off restores the pre-registry behavior: bare owner/repo is GitHub shorthand and the
daemon never resolves or contacts a registry on install, update preview, or update.
Enable with pluginRegistryEnabled: true or PASEO_PLUGIN_REGISTRY_ENABLED=1.

* feat(website): ship the plugin directory, browse pages, and single-column detail

Directory: count, build/submit links, What's new, the nine categories, and Most installed
with a This week / This month / All time switch. Browse pages at /plugins/all and
/plugins/category/<slug> with a category sidebar, tabs, and a four-column grid; old
/plugins?category= links redirect. Install counts gain daily KV buckets kept 60 days.

* fix(website): keep a README's leading GitHub alert on the plugin page

* feat(website): search plugins from the directory and browse pages

Typing replaces the URL with /plugins/all?q=<term> (or the current category
with ?q=), which renders matching plugins on the server. Matching covers
name, description, ID, and author. Old /plugins?q= links redirect.

* fix(website): keep the directory's ranking window when searching
This commit is contained in:
Mohamed Boudra
2026-10-04 20:38:39 +01:00
committed by GitHub
parent febe9611bf
commit c062280429
33 changed files with 1335 additions and 681 deletions
+1 -1
View File
@@ -218,7 +218,7 @@ export function createPluginCommand(): Command {
.description("Trust and install a plugin from a directory, Git repository, or npm package")
.argument(
"<source>",
"Registry owner/slug or host/owner/slug, host directory, github:owner/repo, git: or npm: source",
"Host directory, GitHub owner/repo, git: or npm: source, optionally followed by :plugin/path",
)
.option("--id <id>", "Runtime plugin ID (defaults to paseo-plugin.json id)")
.option("--ref <ref>", "Git branch, tag, or commit")