Packages and compatibility
Every Light package, which ones install on their own and which come as a set, what a shop may leave off, the bridges to other modules with their version ranges, and the platforms each release is checked on.
Light ships as separate Composer packages, one per module, plus two metapackages that install the admin in one command. This page says which packages you can take apart, which always come together, and which other modules Light bridges to. Install Light has the commands.
The packages
| Package | Module | Kind | In distribution-nl |
|---|---|---|---|
mrx/module-light | Mrx_Light | Core: the shell, pools, API, doctor | Yes |
mrx/module-ai | Mrx_Ai | Core: AI texts and images, on disrex/module-ai | Yes |
mrx/module-settings | Mrx_Settings | Core: settings pages, users and permissions | Yes |
mrx/module-home | Mrx_Home | Core: Home, setup guide, analytics | Yes |
mrx/module-orders | Mrx_Orders | Core: orders, shipping, draft orders | Yes |
mrx/module-customers | Mrx_Customers | Core: customers | Yes |
mrx/module-documents | Mrx_Documents | Core: emails and PDFs, on dompdf/dompdf | Yes |
mrx/module-locations | Mrx_Locations | Core: locations and pickup, on Magento's inventory | Through Home, Orders and Catalog |
mrx/module-catalog | Mrx_Catalog | Core: products, categories, stock | Yes |
mrx/module-content | Mrx_Content | Core: pages, blocks, menus | Yes |
mrx/module-discounts | Mrx_Discounts | Core: discounts and codes | Yes |
mrx/module-apps | Mrx_Apps | Core: Apps, pins, the module finder | Yes |
mrx/module-themes | Mrx_Themes | Core: admin themes | Yes |
mrx/module-returns | Mrx_Returns | Add-on: returns, on mage-os/module-rma | No, suggested |
mrx/module-country-nl | Mrx_CountryNl | Pack: Dutch facts (VAT, KvK, PostNL, iDEAL wording) | Yes |
mrx/module-payments-mollie | Mrx_PaymentsMollie | Bridge: Mollie | Yes |
mrx/module-payments-paynl | Mrx_PaymentsPaynl | Bridge: Pay. | Yes |
mrx/module-shipping-matrixrate | Mrx_ShippingMatrixrate | Bridge: rate tables (MatrixRate) | No |
magerex/module-flex-bridge | MageRex_FlexBridge | Bridge: Disrex Flex Editor | No |
magerex/light-branding | MageRex_Branding | Brand: the MageRex logo, sign-in page and default theme | No, suggested |
magerex/module-support | MageRex_Support | MageRex support tickets (Freshdesk) | Yes |
mrx/module-content-hyva | Mrx_ContentHyva | Hyvä storefront parts of Content | Only distribution-nl-hyva |
mrx/module-discounts-hyva | Mrx_DiscountsHyva | Hyvä storefront parts of Discounts | Only distribution-nl-hyva |
mrx/module-settings-hyva | Mrx_SettingsHyva | Hyvä storefront parts of Settings | Only distribution-nl-hyva |
magerex/light-demo-data | MageRex_DemoData | Demo products, customers and orders | No, never on a live shop |
magerex/distribution-nl holds 17 Light modules, and magerex/distribution-nl-hyva adds the three Hyvä modules for 20. Both are white-label, and a metapackage for another country will be too: the MageRex brand is a package of its own (The MageRex brand). Every package of one release carries the same version, and its range on the others is ^0.4, so update them together (Updating).
What installs on its own
Eight core packages require each other, so Composer installs all eight when you require any one of them: Light, AI, Settings, Home, Orders, Customers, Documents and Locations. Every other package except AI and Discounts builds on that set:
- Packages with no other Light requirements:
mrx/module-lightalone,mrx/module-aiwith Light, andmrx/module-discountswith Light (plusmrx/module-discounts-hyva). Composer resolves these without the core set. - What the release checks cover: the two metapackages, and Returns, rate tables, the Flex bridge and the MageRex brand, each on top of a metapackage. A shop built from single packages, such as Light with Discounts only, resolves in Composer, but no release check has run it. Install a metapackage and leave modules off instead (next section).
What a shop may leave off
Each of these modules comes with magerex/distribution-nl, and no other Light module requires it. Leave it out of the module:enable line on the first install and it stays off:
| Module | Without it | Checked by |
|---|---|---|
| Mrx_CountryNl | Neutral screens with no Dutch facts; the doctor warns country_pack on a Dutch shop | core-without-packs.spec.ts |
| Mrx_PaymentsMollie | No Mollie screens in Light; Mollie itself keeps working in the stock admin | core-without-packs.spec.ts |
| Mrx_PaymentsPaynl | No Pay. screens in Light | core-without-packs.spec.ts |
| MageRex_Support | No Support page or tickets | support.spec.ts covers it on |
The MageRex brand is not in this list because no metapackage installs it: white-label.spec.ts and npm run guard:white-label check that the admin names no MageRex without it.
The code still installs, and so do Mollie and Pay. from Packagist, because the metapackage requires them. To drop the code as well, require the packages you want one by one instead of the metapackage.
Off from the start, or a dump first
MageRex_Support has its own table, and so do Light core modules such as Orders, Customers, Documents and Home. A setup:upgrade that runs while a module with tables is disabled and its code is still installed drops those tables. Leave such a module off from the first install, or dump the database before you disable it later. The core set and Catalog, Content, Discounts, Apps and Themes can't be left off: other Light modules need them.
Bridges to other modules
A bridge package connects Light to a module from another vendor. It requires that module in a tested range, and Composer refuses a version outside it:
| Bridge | Brings | Range | In a metapackage | What Light adds |
|---|---|---|---|---|
mrx/module-payments-mollie | mollie/magento2 | ^3.1.4 | Yes | Mollie in Settings > Payments, payment status on orders, refunds from Light |
mrx/module-payments-paynl | paynl/magento2-plugin | ^4.0 | Yes | Pay. in Settings > Payments, payment status on orders |
mrx/module-shipping-matrixrate | webshopapps/module-matrixrate | ~20.5.2 | No | "How do you charge shipping?" per channel, the Rate table page with CSV import and export |
mrx/module-returns | mage-os/module-rma | ^2.4.1 | No, suggested | Returns screens, the return slip, return mails |
magerex/module-flex-bridge | none; suggests disrex/module-flex-core | FlexCore 2.0.26 tested | No | The Flex Editor banner on Home and pages, and cards in the category and product editors |
mrx/module-content-hyva, -discounts-hyva, -settings-hyva | hyva-themes/magento2-theme-module, hyva-themes/magento2-compat-module-fallback | any; Hyvä 1.4 and 1.5 tested | distribution-nl-hyva | Storefront parts on a Hyvä theme |
Two of the core modules lean on another vendor too: Mrx_Ai on disrex/module-ai ^1.3, and Mrx_Documents on dompdf/dompdf ^3.1. Both come along with the core set.
- Mollie and Pay. come from Packagist. A shop that also uses packages.disrex.nl excludes
mollie/*andpaynl/*there (The repository). - The Flex bridge shows nothing and answers 404 without FlexCore, so it is safe to install before Flex. FlexCore runs on Hyvä only (Flex shops).
- MatrixRate and Returns keep data in their own tables. Read Rate tables and Returns before you take them out.
Optional Magento modules
Light runs without these, and uses them when the shop has them. They are the suggest entries of Light's packages:
| Magento module | Used by | With it |
|---|---|---|
| Inventory (MSI), with In-Store Pickup | Locations, Catalog, Orders | Stock per location and pickup at a location. Without MSI, or with one source, Light keeps one quantity per product (Stock and locations) |
| Page Builder | Catalog, Content | The page editor notices Page Builder content and leaves it to Page Builder |
| Bundle and Grouped products | Catalog | Those product types in the product list and editor |
| Gift messages | Documents | The gift message on PDFs and mails |
mage-os/module-theme-adminhtml-switcher | Light | "Switch to advanced mode" opens the stock admin in the admin's own theme |
mage-os/module-meta-robots-tag | Content | The search engine setting on pages |
mage-os/module-automatic-translation | AI | Translating content through AI |
Platforms
| What | Supported | Checked per release |
|---|---|---|
| Platform | Mage-OS 3.x, Magento Open Source 2.4.8 and 2.4.9. Not Adobe Commerce | Composer resolves on Mage-OS 3.5.0, Magento 2.4.9 and 2.4.8-p5 (tests/release/resolve.sh) |
| PHP | 8.3, 8.4, 8.5 | 8.5 on Mage-OS 3.5.0 and Magento 2.4.9, 8.4 on Magento 2.4.8-p5 |
| Storefront | Luma, or Hyvä with distribution-nl-hyva | Luma in the dev shop, Hyvä 1.4 and 1.5 on test shops |
| Inventory | Without MSI, MSI with one source, MSI with several sources | inventory*.spec.ts, locations*.spec.ts |
| Two-factor sign-in | On or off | auth-shell.spec.ts |
Every release resolves magerex/distribution-nl, magerex/distribution-nl-hyva, mrx/module-shipping-matrixrate and magerex/module-flex-bridge from packages.disrex.nl on the three platforms before it counts as published.
A bridge for your own module
Your own module, or a third-party one, can join Light in the same way: in the module itself (pattern B), or in a separate <vendor>/module-<name>-light package (pattern A). Versioning explains both patterns and the range rule, and Upgrading the module behind your bridge covers new versions of the module you bridge to.
Last updated on