Skip to content

Template and plugin marketplaces #142

Description

@karutoil

Summary

Create browsable marketplaces for templates (server eggs) and plugins, allowing the community to share and discover content. This is the long-term evolution of the current Egg Explorer plugin and manual plugin installation.

Current State

  • Templates: 248 Pterodactyl eggs in-repo, importable via API or Egg Explorer plugin. No sharing/discovery beyond this repo.
  • Plugins: 3 built-in plugins (example, ticketing, egg-explorer). Manual installation via filesystem. Plugin SDK exists with catalyst-plugin create scaffold.
  • No central registry, versioning, or distribution mechanism for either templates or plugins.

Requirements

Template Marketplace

  • Browse community-submitted templates with search, category filters, and ratings
  • One-click import into the user's installation
  • Template versioning (authors can push updates, users can opt-in to updates)
  • Template validation on submission (must pass egg import conversion)
  • Author profiles and template statistics (downloads, servers using it)

Plugin Marketplace

  • Browse community plugins with install/uninstall from the admin panel
  • Plugin versions with compatibility checks against the Catalyst version
  • Automated install: download plugin bundle → extract to plugins dir → hot-reload
  • Plugin metadata: description, screenshots, permissions required, author
  • Review/rating system

Shared Infrastructure

  • API endpoints for marketplace browsing, search, and installation
  • Package format: tarball/zip with plugin.json manifest (plugins) or egg JSON (templates)
  • Signature verification for marketplace packages (optional but recommended)
  • Admin settings: enable/disable marketplace, allowed categories, approval workflow

Acceptance Criteria

  • Template marketplace API: browse, search, import, version check
  • Plugin marketplace API: browse, install, uninstall, update
  • Frontend admin pages for both marketplaces
  • Plugin install triggers hot-reload without backend restart
  • Compatibility checks prevent installing incompatible plugins/templates
  • Package signature verification (at least basic integrity check)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:backendBackend / API workarea:frontendFrontend / UI workenhancementNew feature or requestplannedPlanned for future implementation

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions