Port Plugin Developer Guide from Confluence, rewritten for graph-cli - #2
Conversation
Replaces the dummy Analytics-template scaffold with the real firefly-graph Plugin Developer Guide, ported from Confluence page 3769393821 and its 9 sub-pages. The CLI Reference and Submitting Plugins pages are rewritten (not just find/replaced) against the actual @adobe/graph-cli source, since its command surface changed substantially from the old graph-sdk docs: install/build/lint/format lost per-plugin filtering, submit moved from per-plugin major/minor prompts to a whole-project archive submitted to a named channel with a required changelog. GRAPH-3863
🔍 Linter ReportClick to expand full reportThis comment was automatically generated by the linter bot. |
Replace npm/Artifactory installation instructions across the guides with Adobe Developer Console download instructions, reflecting the CLI's distribution model change (GRAPH-2737). - src/pages/guides/cli-reference/index.md: drop the `npm install -g @adobe/graph-cli` step and the "published as @adobe/graph-cli" framing; document downloading from developer.adobe.com/console instead, verify install via `graph --version`, and note that registry commands (submit/install) require `graph login` first. - src/pages/guides/creating-plugins/index.md: remove the ~/.npmrc Artifactory registry setup and `npm login --registry=...` steps (no longer applicable — CLI isn't distributed via a package registry). Add TODO(GRAPH-2737) markers where the exact Developer Console download path and the project-level dependency-provisioning story (package.json devDependencies, .npmrc) still need to be confirmed against the current scaffold once the self-service SDK Onboarding flow ships. Drop `@adobe/graph-cli` from the sample package.json devDependencies and the .npmrc line from the project tree diagram. - src/pages/guides/index.md: point the "Graph CLI" prerequisite bullet at the Developer Console download instead of the npm global install command. No functional/code changes — documentation only, correcting install instructions that were still describing the pre-rebrand npm/Artifactory distribution flow.
🔍 Linter ReportClick to expand full reportThis comment was automatically generated by the linter bot. |
🔍 Linter ReportClick to expand full reportThis comment was automatically generated by the linter bot. |
The Plugin Developer Guide and CLI reference previously told readers to
install pnpm globally and run pnpm install/pnpm run as the primary
workflow. The graph-cli tooling itself is package-manager agnostic, so
hard-coding pnpm as a prerequisite added an unnecessary install step
and implied it was required rather than optional.
Changes:
- src/pages/index.md, src/pages/guides/index.md: prerequisites list
now reads "A package manager — npm (ships with Node.js), pnpm, or
Yarn all work" instead of requiring pnpm specifically.
- src/pages/guides/creating-plugins/index.md: prerequisites and the
Step 5 build walkthrough switch the example commands to `npm
install`, noting pnpm/Yarn work equally well.
- src/pages/guides/cli-reference/index.md: typical workflow and
Package Management section switch example commands to npm and
describe the CLI as working alongside npm, pnpm, or Yarn.
- Also fixes a relative link in guides/index.md prerequisites
("Creating Plugins" now links to creating-plugins/index.md).
No behavioral change to the CLI itself — documentation only, making
the onboarding instructions match the tool's actual package-manager
flexibility.
🔍 Linter ReportClick to expand full reportThis comment was automatically generated by the linter bot. |
| "@graph/graph-plugin-types": "^2.1.5", // versions may need updating to latest | ||
| "@graph/platform-exports": "^2.2.10", |
There was a problem hiding this comment.
These should be removed. They'll be downloaded platform-versioned bundles.
| { | ||
| "name": "@adobe/node-add", | ||
| "version": "1.0", | ||
| "platformVersion": 1, |
There was a problem hiding this comment.
This needs updating to:
| "platformVersion": 1, | |
| "platformVersion": { | |
| "major": 2, | |
| "minor": 23 | |
| }, |
|
|
||
| Let's understand what each field means: | ||
|
|
||
| * **name** — Your plugin's unique identifier. By convention, use `@yourcompany/plugin-name`. |
There was a problem hiding this comment.
| * **name** — Your plugin's unique identifier. By convention, use `@yourcompany/plugin-name`. | |
| * **name** — Your plugin's unique identifier. Use `@adobe-assined-scope/<plugin-type>-plugin-name`. |
| Let's understand what each field means: | ||
|
|
||
| * **name** — Your plugin's unique identifier. By convention, use `@yourcompany/plugin-name`. | ||
| * **version** — Your plugin's version. Use semantic versioning. |
There was a problem hiding this comment.
| * **version** — Your plugin's version. Use semantic versioning. | |
| * **version** — Your plugin's version. Use semantic versioning "<major>.<minor>" with no patch. |
We should add a page that details plugin versioning policies.
|
|
||
| * **name** — Your plugin's unique identifier. By convention, use `@yourcompany/plugin-name`. | ||
| * **version** — Your plugin's version. Use semantic versioning. | ||
| * **platformVersion** — Which version of the Graph platform API this plugin targets. Currently always `1`. |
There was a problem hiding this comment.
| * **platformVersion** — Which version of the Graph platform API this plugin targets. Currently always `1`. | |
| * **platformVersion** — Which version of the Graph platform API this plugin targets. |
We should add a page about platform versioning and link to it here for more details about the platform versioning policy.
|
|
||
| * **displayName** — What users see in the node catalog when browsing for nodes to add. | ||
| * **description** — A short explanation of what the node does. Keep it clear and concise. | ||
| * **tags** — Help users find your node. Use `category:` prefix for categories (like `category:math`), then add other descriptive tags. |
There was a problem hiding this comment.
Should mention "category" is which section it will show up in the UI.
🔍 Linter ReportClick to expand full reportThis comment was automatically generated by the linter bot. |
Port two more sections of the Plugin Developer Guide from Confluence
(GRAPH-3863): plugin versioning policy and platform versioning
mechanics, previously undocumented on developer.adobe.com.
- New guides/plugin-versioning/index.md: the major.minor version
format (no patch segment), the "might change output = major, can
never change output = minor" rule, the review-assigned version
flow, a full breaking-vs-safe change table, and per-plugin-type
notes (datatypes are unversioned).
- New guides/platform-versioning/index.md: the platformVersion
manifest field ({ major, minor } object, scalar form kept for back
compat), major/minor semantics for the platform API itself, and how
`graph install` provisions one isolated .platform-dependencies/
bundle per distinct major.minor so plugins in the same project can
target different platform versions independently.
- Link both new pages into config.md (left nav) and guides/index.md
(guide index, items 11-12).
- Update creating-plugins/index.md to match current CLI behavior:
package.json name must be a scoped @adobe/... name, platformVersion
is now the { major, minor } object (not a bare 1), the
@graph/graph-plugin-types and @graph/platform-exports devDependencies
are no longer added by hand (installed by `graph install` instead),
and the field descriptions for name/version/platformVersion/tags now
point to the new versioning guides and match how the CLI actually
derives plugin type from the name prefix.
🔍 Linter ReportClick to expand full reportThis comment was automatically generated by the linter bot. |
🔍 Linter ReportClick to expand full reportThis comment was automatically generated by the linter bot. |
🔍 Linter ReportClick to expand full reportThis comment was automatically generated by the linter bot. |
🔍 Linter ReportClick to expand full reportThis comment was automatically generated by the linter bot. |
🔍 Linter ReportClick to expand full reportThis comment was automatically generated by the linter bot. |
Replaces the dummy Analytics-template scaffold with the real firefly-graph Plugin Developer Guide, ported from Confluence page 3769393821 and its 9 sub-pages. The CLI Reference and Submitting Plugins pages are rewritten (not just find/replaced) against the actual @adobe/graph-cli source, since its command surface changed substantially from the old graph-sdk docs: install/build/lint/format lost per-plugin filtering, submit moved from per-plugin major/minor prompts to a whole-project archive submitted to a named channel with a required changelog.
GRAPH-3863
Description
Related Issue
Motivation and Context
How Has This Been Tested?
Screenshots (if appropriate):
Types of changes
Checklist: