Skip to content

Feature: Dynamic Downloader, Plugins Support, and Admin Integration#1

Merged
elabx merged 1 commit intoelabx:mainfrom
markusthomas:main
Jan 16, 2026
Merged

Feature: Dynamic Downloader, Plugins Support, and Admin Integration#1
elabx merged 1 commit intoelabx:mainfrom
markusthomas:main

Conversation

@markusthomas
Copy link
Copy Markdown
Contributor

Summary

This PR modernizes the module by replacing the static, bundled Alpine.js version with a dynamic downloader/updater mechanism. This allows users to always use the latest Alpine.js version without waiting for a module update.

It also adds support for official Alpine plugins and Admin area integration.

Key Changes

  • Local Hosting & Auto-Updater:
    • Removed the static Alpine.js file.
    • Added functionality to download the latest core and plugins from unpkg.com directly to the server (assets folder).
    • Added a "Check for Updates" feature in the module configuration.
  • Plugin Architecture:
    • Added configuration checkboxes to easily enable/disable official plugins (Mask, Intersect, Persist, Focus, Collapse, Morph, History).
    • Handles the correct loading order of plugins and core.
  • Admin Integration:
    • Added a configuration option to load Alpine.js within the ProcessWire Admin interface.

How to Test

  1. Install or update the module with this branch.
  2. Go to Modules > Configure > AlpineJS.
  3. You should see the new configuration interface.
  4. Click the button to download the latest Alpine.js version.
  5. Enable some plugins (e.g., Persist or Morph) and save.
  6. Check the frontend source code to verify that the scripts are loaded locally from the module's assets folder.

Notes for Migration / Breaking Changes

Since the static JS file has been removed, existing users must visit the module configuration page once after updating and click the "Download" button to fetch the local files. Otherwise, Alpine.js will not load until the cache is rebuilt/files are downloaded.

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