amadeco/module-quickview

Magento 2 module for quick product preview without page reloading. Fully configurable, compatible with all product types and optimized for performance.

Installs: 20

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 1

Forks: 1

Open Issues: 0

Type:magento2-module

pkg:composer/amadeco/module-quickview

v2.0.1 2026-02-08 17:20 UTC

This package is auto-updated.

Last update: 2026-02-08 17:20:56 UTC


README

Latest Stable Version License Magento PHP

SPONSOR: Amadeco

A highly configurable QuickView module for Magento 2 that allows customers to quickly preview product details without leaving the current page. Engineered for performance and strict adherence to modern Magento coding standards.

Features

  • Performance Optimized: Implements IntersectionObserver for lazy loading of QuickView buttons, reducing initial DOM impact.
  • Modern Architecture: Built on PHP 8.3 using strict typing, constructor promotion, and readonly properties.
  • Broad Compatibility: Supports all product types (Simple, Configurable, Grouped, Bundle, Downloadable, Virtual).
  • AJAX-Powered: Fast loading of modal content.
  • Fully Responsive: Adapts seamlessly to mobile and desktop viewports.
  • Theme Friendly: Extensive configuration options to target specific CSS selectors.
  • Seamless Integration: "Add to Cart" functionality without page reload.

Requirements

  • Magento: 2.4.6+ (Tested on 2.4.8)
  • PHP: 8.3 (Strict Requirement)
  • jQuery: (Included in Magento)

Installation

Using Composer (Recommended)

composer require amadeco/module-quickview
bin/magento module:enable Amadeco_QuickView
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento setup:static-content:deploy

Manual Installation

  1. Create directory app/code/Amadeco/QuickView in your Magento installation.
  2. Clone or download this repository into that directory.
  3. Enable the module and update the database:
bin/magento module:enable Amadeco_QuickView
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento setup:static-content:deploy

Configuration

Navigate to Stores > Configuration > Amadeco > Quick View.

  1. General Settings:
  • Enable/Disable the module.
  • Elements Selector: Define which product container triggers the button initialization (default: .product-item).
  • Button Container: Specify where to inject the button (default: .product-item-info).
  • Button Label: Customize the text (e.g., "Quick View").
  1. Modal Settings:
  • Set Modal Title.
  • Toggle visibility for Product Details, Reviews, and Downloadable Samples.
  • Enable/Disable "Go to Product" button.
  1. Theme Selectors:
  • Customize CSS selectors for Tabs and Review links to match your theme's structure.
  1. HTML Identifiers Replacement:
  • Advanced configuration to swap HTML IDs or Classes dynamically within the modal to prevent conflicts with the main page.

Customisation

The module is designed to be highly customizable. You can configure almost all behavior via Magento's Layout XML system, avoiding the need to write custom JavaScript for simple configuration changes.

Customizing via Layout XML (Recommended)

To change options like selectors, labels, or disable lazy loading, extend the layout in your theme (e.g., app/design/frontend/Vendor/Theme/Amadeco_QuickView/layout/default.xml).

Target the amadeco.quickview.init block and define arguments in jsLayout:

<?xml version="1.0"?>
<page xmlns:xsi="[http://www.w3.org/2001/XMLSchema-instance](http://www.w3.org/2001/XMLSchema-instance)" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <body>
        <referenceBlock name="amadeco.quickview.init">
            <arguments>
                <argument name="jsLayout" xsi:type="array">
                    <item name="lazy" xsi:type="boolean">false</item>
                    
                    <item name="modalTitle" xsi:type="string" translate="true">Fast Preview</item>
                    
                    <item name="selectors" xsi:type="array">
                        <item name="btnContainer" xsi:type="string">.custom-photo-container</item>
                    </item>
                </argument>
            </arguments>
        </referenceBlock>
    </body>
</page>

CSS Customization

The module includes minimal styling. You can extend the styling in your theme by targeting these classes: CSS

.quickview-button       /* The trigger button */
.quickview-wrapper      /* The main modal wrapper */
.quickview-media        /* Left column (Images) */
.quickview-main         /* Right column (Details) */

Contributing

Contributions are welcome! Please read our Contributing Guidelines.

Support

For issues or feature requests, please create an issue on our GitHub repository.

License

This module is licensed under the Open Software License ("OSL") v3.0. See the LICENSE.txt file for details.