Skip to content

Plugin docs#173

Merged
notAreYouScared merged 16 commits intomainfrom
boy132/plugin-docs
Dec 19, 2025
Merged

Plugin docs#173
notAreYouScared merged 16 commits intomainfrom
boy132/plugin-docs

Conversation

@Boy132
Copy link
Copy Markdown
Member

@Boy132 Boy132 commented Nov 6, 2025

pelican-dev/panel#1866

Summary by CodeRabbit

  • Documentation
    • Added a comprehensive guide for creating and publishing Pelican panel plugins: plugin structure, configuration fields, installation options, update mechanics, settings and environment handling, translations, resource registration, UI panels, and marketplace/licensing guidance.
  • Documentation
    • Enabled PHP syntax highlighting across docs to improve readability of PHP examples.

✏️ Tip: You can customize this high-level summary in your review settings.

@Boy132 Boy132 self-assigned this Nov 6, 2025
@netlify
Copy link
Copy Markdown

netlify bot commented Nov 6, 2025

Deploy Preview for pelica ready!

Name Link
🔨 Latest commit 44dda12
🔍 Latest deploy log https://app.netlify.com/projects/pelica/deploys/693be1a02de4340008585539
😎 Deploy Preview https://deploy-preview-173--pelica.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Nov 6, 2025

Walkthrough

Adds a new Pelican panel plugins documentation page and registers it in the docs sidebar; also enables PHP syntax highlighting in Docusaurus config. All changes are documentation and configuration only.

Changes

Cohort / File(s) Summary
New plugin documentation
docs/panel/advanced/plugins.mdx
Adds a comprehensive guide for Pelican panel plugins: plugin.json fields, update_url behavior (with examples and wildcard support), installation approaches, plugin structure, Filament resource registration, panel config, translations/views conventions, plugin settings patterns (HasPluginSettings, EnvironmentWriterTrait), publishing/marketplace/licensing notes, and many PHP/JSON/MD examples.
Docs configuration
docusaurus.config.ts, sidebars.ts
Adds "php" to Prism additionalLanguages for PHP highlighting; minor whitespace/formatting tweak to the future key; registers panel/advanced/plugins in the Advanced sidebar.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • Review focus: docs/panel/advanced/plugins.mdx for accuracy, examples, and links.
  • Check docusaurus.config.ts for Prism config correctness and formatting.
  • Verify sidebars.ts entry placement and navigation structure.

Poem

🐰 I hopped through docs to plant this page so bright,

PHP highlighting gives plugins extra light.
Sidebar now welcomes each plugin's tale,
Examples and JSON set the trail.
Hop on, explore — the panel blooms tonight! 🥕

Pre-merge checks and finishing touches

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Title check ❓ Inconclusive The title 'Plugin docs' is partially related to the changeset—it refers to the addition of plugin documentation, which is the main change, but is overly broad and lacks specificity about what aspect of plugins is being documented. Consider a more specific title that conveys what the documentation covers, such as 'Add comprehensive plugin system documentation' or 'Document Pelican panel plugin creation and configuration'.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch boy132/plugin-docs

📜 Recent review details

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 44f3363 and 44dda12.

📒 Files selected for processing (1)
  • docs/panel/advanced/plugins.mdx (1 hunks)
🧰 Additional context used
🪛 LanguageTool
docs/panel/advanced/plugins.mdx

[style] ~203-~203: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ...espace of your plugin. This means you need to prefix view-strings with your plugin id...

(REP_NEED_TO_VB)


[style] ~207-~207: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ...in will be automatically registered. It needs to be named <plugin name>Seeder (e.g. `M...

(REP_NEED_TO_VB)

🔇 Additional comments (8)
docs/panel/advanced/plugins.mdx (8)

1-11: LGTM!

The imports and introductory warning are appropriate for setting user expectations about the plugin system's development status.


13-27: LGTM!

The installation instructions clearly explain both frontend and manual installation methods, including the php artisan p:plugin:install command as required by the PR objectives.


29-48: LGTM!

The plugin creation workflow is well-documented, including the php artisan p:plugin:make command as required by the PR objectives. The plugin structure explanation is clear and helpful.


55-144: LGTM!

The plugin.json documentation is comprehensive and well-structured. The panel version constraints are clearly explained with the ^ prefix notation, meeting the PR objectives. All JSON examples are properly formatted with correct syntax.


146-191: LGTM!

The Filament integration examples are clear and syntactically correct. The explanation of the three panel types and the detailed app panel reconfiguration example provide helpful guidance for plugin developers.


210-270: LGTM!

The plugin settings implementation example is comprehensive and demonstrates proper use of Laravel/Filament patterns. The environment variable naming convention guidance and resource modification examples are clear and helpful.


272-321: LGTM!

The permissions documentation covers both admin roles and subuser permissions comprehensively. The code examples demonstrate proper registration patterns for default, custom, and extended permissions.


323-345: LGTM!

The publishing instructions are clear and straightforward. The beta-period guidance about keeping plugins open source is well-reasoned, and the licensing information provides helpful options for plugin developers.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Boy132
Copy link
Copy Markdown
Member Author

Boy132 commented Dec 1, 2025

@coderabbitai review

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Dec 1, 2025

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 274ddb6 and 44f3363.

📒 Files selected for processing (3)
  • docs/panel/advanced/plugins.mdx (1 hunks)
  • docusaurus.config.ts (2 hunks)
  • sidebars.ts (1 hunks)
🧰 Additional context used
🪛 LanguageTool
docs/panel/advanced/plugins.mdx

[grammar] ~47-~47: Use a hyphen to join words.
Context: ...tabase/migrations`. Everything is auto discovered and service providers, artisa...

(QB_NEW_EN_HYPHEN)


[grammar] ~98-~98: Use a hyphen to join words.
Context: ...} } ``` If you don't have panel version specific plugin versions you can also us...

(QB_NEW_EN_HYPHEN)


[style] ~203-~203: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ...espace of your plugin. This means you need to prefix view-strings with your plugin id...

(REP_NEED_TO_VB)


[style] ~208-~208: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ...e plugin list on the panel. Your plugin needs to provide the form and how the data shoul...

(REP_NEED_TO_VB)

🔇 Additional comments (3)
sidebars.ts (1)

27-35: Plugins doc wired into sidebar correctly

The new panel/advanced/plugins entry is consistent with the new doc path and fits logically under the Panel → Advanced section. Nothing else to change here.

docusaurus.config.ts (1)

101-113: PHP highlighting + future config look good; just sanity‑check in the dev build

Adding "php" to prism.additionalLanguages aligns with the new PHP‑heavy plugin docs, and the future block remains semantically unchanged (only spacing). Please just verify in your local dev build that PHP code blocks render with the expected highlighting.

Also applies to: 140-143

docs/panel/advanced/plugins.mdx (1)

85-124: Fix JSON examples for update.json (missing closing quotes)

In the update.json examples, the download_url fields are missing closing quotes, making the JSON invalid:

  • Line 93 in the first example
  • Line 104 in the wildcard example
  • Line 121 in the mixed wildcard/explicit example

Update each to close the string:

-        "download_url": "...
+        "download_url": "..."

Likely an incorrect or invalid review comment.

Comment thread docs/panel/advanced/plugins.mdx Outdated
Copy link
Copy Markdown
Member

@lancepioch lancepioch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. List and document new artisan commands
  2. Do we explain the versioning constraints?
  3. Was the issues that CodeRabbit resolved? Eg. JSON Examples with Missing Closing Quotes

@Boy132
Copy link
Copy Markdown
Member Author

Boy132 commented Dec 19, 2025

  1. List and document new artisan commands
  2. Do we explain the versioning constraints?
  3. Was the issues that CodeRabbit resolved? Eg. JSON Examples with Missing Closing Quotes
  1. The important ones (php artisan p:plugin:make and php artisan p:plugin:install) are explained.
  2. For the panel version? Yes, that is explained.
  3. Yes.

@Boy132 Boy132 marked this pull request as ready for review December 19, 2025 19:07
@notAreYouScared notAreYouScared merged commit e313f96 into main Dec 19, 2025
5 checks passed
@notAreYouScared notAreYouScared deleted the boy132/plugin-docs branch December 19, 2025 23:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants