Skip to content

feat(plugins): filter the marketplace by type, category, and version; add category backfill command - #499

Merged
simonhamp merged 3 commits into
NativePHP:mainfrom
lessevv:feat/plugin-directory-filters
Sep 5, 2026
Merged

feat(plugins): filter the marketplace by type, category, and version; add category backfill command#499
simonhamp merged 3 commits into
NativePHP:mainfrom
lessevv:feat/plugin-directory-filters

Conversation

@lessevv

@lessevv lessevv commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Adds Type (free/paid), Category, and NativePHP version filters to the public plugin marketplace directory, with active-filter pills and a clear-all action.
  • Adds a nullable category column on plugins (App\Enums\PluginCategory: Media, Security, Connectivity, Notifications, Payments, Analytics, System).
  • Adds plugins:backfill-categories, a one-off maintainer command that assigns a category to already-published plugins with none, using a keyword-based heuristic against name/description/repository URL. Supports --dry-run, never overwrites an existing category, and reports unmatched plugins separately rather than guessing.
  • Fixes a crash: an invalid type/category value in the URL (stale bookmark, hand-edited query string) previously threw an uncaught ValueError and 500'd the whole page; it's now silently dropped back to "no filter" in mount().

🤖 Generated with Claude Code

lessevv and others added 2 commits September 5, 2026 02:49
…lace directory

Lets developers narrow the plugin marketplace by paid/free, category, and
supported NativePHP Mobile version, with active-filter pills and a clear-all
action. Also normalizes an invalid `type`/`category` value from the URL (a
stale bookmark or hand-edited query string) instead of crashing the page with
an uncaught ValueError.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
One-off maintainer command that assigns a category to already-published
plugins that predate the category column, using a keyword-based heuristic
matched against each plugin's name, description, and repository URL. Never
overwrites an existing category, supports --dry-run, and reports plugins
with no confident match separately for manual review.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@simonhamp

Copy link
Copy Markdown
Member

I see this for the new filters Screenshot 2026-09-05 at 20.17.47

The forms plugin draws the select arrow as a background image and reserves
space for it with padding-right. Our px-3 was overriding that, so longer
labels ran under the arrow.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015cBDRXfcfnUbMnmUK9c4Ca
@simonhamp
simonhamp merged commit f6bb6e5 into NativePHP:main Sep 5, 2026
1 check passed
@lessevv

lessevv commented Sep 5, 2026

Copy link
Copy Markdown
Contributor Author

Thanks for fixing it! It didn't show those collapsing chevrons for me @simonhamp

@lessevv
lessevv deleted the feat/plugin-directory-filters branch September 5, 2026 21:22
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.

2 participants