Modern, Accessible UI
Styled text inputs and textareas — clean borders, focus rings, floating hints, character counters
Beautifully styled product custom options for Hyva and Luma Magento 2 storefronts.
Key Features:
Additional Services
Built-in from day one. No add-ons, no upsell, no licence keys to renew.
Styled text inputs and textareas — clean borders, focus rings, floating hints, character counters
CSS custom properties — every color, radius, spacing, and font is a CSS variable - override in one place
Hyva — templates use Alpine.js and Tailwind utility classes, zero external JS
Single master toggle — turn styled rendering on or off from Stores > Configuration > Panth Extensions > Custom Options
Zero external JS dependencies — everything uses Alpine.js (bundled with Hyva) or vanilla CSS
Custom Options - Styled Product Options for Magento 2 Hyva & Luma. Panth Custom Options replaces default Magento 2 product custom options with a modern, accessible UI - styled text inputs, drag-and-drop file upload zones, dropdowns, card-style radios and checkboxes, HTML5 date pickers, and CSS-variable theming. Works on Hyva and Luma. Compatible with Magento 2.4.4 - 2.4.8 and PHP 8.1 - 8.4. Built by Top Rated Plus Magento developer Kishan Savaliya.
Engineered for magento 2 custom options, product options styling, hyva custom options — ships with sensible defaults, full admin controls, and zero JavaScript bloat. Works identically on Hyva and Luma; passes Adobe MEQP with zero severity-10 violations.
Beautifully styled product custom options for Hyva and Luma Magento 2 storefronts. Replaces Magento's default custom options rendering with a modern, accessible UI - styled text inputs, drag-and-drop file upload zones, elegant dropdowns, card-style radio and checkbox groups, native HTML5 date pickers, and CSS custom properties for easy theming.
Panth Custom Options gives your configurable and simple products with options (monograms, engravings, gift messages, file uploads, date selection, add-ons) a premium look that matches the rest of your Hyva or Luma storefront. Every input type Magento supports is restyled for clarity, accessibility, and conversion. All colors, radii, spacing, and typography are controlled by CSS variables - override them once in your theme and every custom option on every product follows your brand.
Built on Alpine.js for Hyva (no extra JS libraries) and lightweight CSS for Luma. Toggle globally from the admin, or let it stay on out of the box.
Get a free quote for your project in 24 hours - custom modules, Hyva themes, performance optimization, M1 to M2 migrations, and Adobe Commerce Cloud.
Kishan SavaliyaTop Rated Plus on Upwork 100% Job Success - 10+ Years Magento Experience Adobe Certified - Hyva Specialist |
Panth Infotech AgencyMagento Development Team Custom Modules - Theme Design - Migrations Performance - SEO - Adobe Commerce Cloud |
Visit our website: kishansavaliya.com | Get a quote: kishansavaliya.com/get-quote
<select> elements with chevron, hover and focus states<input type="date">, <input type="time">, and <input type="datetime-local"> - no external date libraries<label> associations, ARIA attributes, keyboard navigation, visible focus statesPanth\Core\Helper\Theme, no manual switchingStores > Configuration > Panth Extensions > Custom OptionsPanth_Core dependency resolved automaticallyEvery Magento custom option input type is styled by this module:
| Magento Type | Rendered As |
|---|---|
| Text Field | Styled single-line text input with focus ring |
| Text Area | Styled multi-line textarea with resize handle |
| File | Drag-and-drop upload zone with preview and remove button |
| Drop-down | Custom-styled <select> with chevron icon |
| Radio Buttons | Card-style radio group with price-delta badges |
| Checkbox | Card-style checkbox group with price-delta badges |
| Multiple Select | Enhanced multi-select with tags |
| Date | Native HTML5 <input type="date"> |
| Date & Time | Native HTML5 <input type="datetime-local"> |
| Time | Native HTML5 <input type="time"> |
| Requirement | Versions Supported |
|---|---|
| Magento Open Source | 2.4.4, 2.4.5, 2.4.6, 2.4.7, 2.4.8 |
| Adobe Commerce | 2.4.4, 2.4.5, 2.4.6, 2.4.7, 2.4.8 |
| Adobe Commerce Cloud | 2.4.4 - 2.4.8 |
| PHP | 8.1.x, 8.2.x, 8.3.x, 8.4.x |
| Hyva Theme | 1.1+ |
| Luma Theme | Native support |
| Panth_Core | ^1.0 (required, free) |
Tested on:
composer require mage2kishan/module-custom-options
bin/magento module:enable Panth_Core Panth_CustomOptions
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento setup:static-content:deploy -f
bin/magento cache:flush
app/code/Panth/CustomOptions/ in your Magento installationPanth_Core the same way (required dependency)bin/magento module:enablebin/magento module:status Panth_CustomOptions
# Expected output: Module is enabled
Then open any product that has custom options defined - the styled UI will replace the default Magento rendering automatically.
Navigate to Stores > Configuration > Panth Extensions > Custom Options.
| Setting | Default | Description |
|---|---|---|
| Enable Custom Options Styling | Yes | Master toggle. When disabled, Magento falls back to its default templates with zero overhead. |
That's it - the module is designed to work beautifully out of the box. Visual customization happens through CSS variables.
All visual tokens are exposed as CSS custom properties. Override any of these in your child theme's CSS (or in theme-config.json if you use Panth_ThemeCustomizer):
| Variable | Default | Purpose |
|---|---|---|
--custom-options-primary |
#0D9488 |
Primary brand color (buttons, focus, price) |
--custom-options-border |
#E5E7EB |
Input border color |
--custom-options-border-focus |
#0D9488 |
Input border color on focus |
--custom-options-bg |
#FFFFFF |
Container background |
--custom-options-input-bg |
#F9FAFB |
Input background |
--custom-options-text |
#171717 |
Primary text color |
--custom-options-text-muted |
#6B7280 |
Hint and helper text |
--custom-options-label |
#374151 |
Option label color |
--custom-options-price |
#0D9488 |
Price-delta badge color |
--custom-options-required |
#EF4444 |
Required asterisk color |
--custom-options-radius |
10px |
Border radius for inputs and cards |
--custom-options-font |
'DM Sans', sans-serif |
Typography |
/* app/design/frontend/YourVendor/yourtheme/web/css/overrides.css */
:root {
--custom-options-primary: #7c3aed;
--custom-options-border-focus: #7c3aed;
--custom-options-radius: 4px;
}
Panth Custom Options uses Magento's standard layout override system to replace the templates that render product custom options. Specifically:
view/frontend/templates/product/view/options/ that emit Tailwind utility classesPanth\Core\Helper\Theme detects which theme is active per store view and loads the correct layoutMagento_Catalog/js/price-option and priceBox behaviour - no pricing logic is changedNo database schema is modified, no product data is touched, and disabling the module instantly restores default rendering.
| Issue | Cause | Resolution |
|---|---|---|
| Options still show default styling | Cache not flushed | Run bin/magento cache:flush and hard-refresh the product page |
| File upload zone not working | Static content not deployed | Run bin/magento setup:static-content:deploy -f |
| Date picker shows old-style input | Browser does not support HTML5 date input | Update to a modern browser (Chrome, Edge, Firefox, Safari - all support it) |
| CSS variables not applying | Variables defined at a lower-specificity selector | Place overrides inside :root {} or body {} |
| Styling missing on Hyva | Hyva CSS not rebuilt | Run npm run build-prod inside your Hyva theme's web/tailwind directory |
Enable Debug Mode in Panth Extensions > Core Settings for verbose logs in var/log/panth_core.log.
No. All price-delta logic continues to flow through Magento's standard priceBox and price-option JS components. This module only replaces the visual rendering.
Yes. All your existing custom options (set up under Admin > Catalog > Products > [Product] > Customizable Options) automatically render in the new styled UI. No migration required.
Yes. Magento's native file type and size validation continues to work, with better visual feedback for the customer (file name preview, size check, remove button, error states).
The master toggle is global. For per-product control, you can override the layout on a single product page using the standard Magento layout update XML.
Yes. The module uses the Hyva theme parent chain - any Hyva child theme automatically inherits the styled templates.
Yes. Custom options on configurable products (the parent product, not the simple variants) render with the new UI. Configurable variant selection remains Magento-native.
Yes. Full source on GitHub at github.com/mage2sk/module-custom-options.
Yes. Settings respect Magento's standard scope hierarchy (default > website > store view). Different store views can have different primary colors or even disable the styling entirely.
| Channel | Contact |
|---|---|
| kishansavaliyakb@gmail.com | |
| Website | kishansavaliya.com |
| +91 84012 70422 | |
| GitHub Issues | github.com/mage2sk/module-custom-options/issues |
| Upwork (Top Rated Plus) | Hire Kishan Savaliya |
| Upwork Agency | Panth Infotech |
Response time: 1-2 business days.
Looking for custom Magento module development, Hyva theme customization, store migrations, or performance optimization? Get a free quote in 24 hours:
Panth Custom Options is distributed under a proprietary license - see LICENSE.txt. Distribution is restricted to the Adobe Commerce Marketplace and authorized Packagist channels.
Built and maintained by Kishan Savaliya - kishansavaliya.com - a Top Rated Plus Magento developer on Upwork with 10+ years of eCommerce experience.
Panth Infotech is a Magento 2 development agency specializing in high-quality, security-focused extensions and themes for both Hyva and Luma storefronts. Our extension suite covers SEO, performance, checkout, product presentation, customer engagement, and store management - over 34 modules built to MEQP standards and tested across Magento 2.4.4 to 2.4.8.
Browse the full extension catalog on the Adobe Commerce Marketplace or Packagist.
Ready to upgrade your Magento 2 product pages?
SEO Keywords: magento 2 custom options, product options styling, hyva custom options, luma custom options, magento 2 product options, magento 2 styled custom options, magento 2 file upload zone, magento 2 date picker, magento 2 radio buttons cards, magento 2 checkbox cards, hyva product page ui, luma product page ui, magento 2 product configurator, magento 2 customization options, panth custom options, magento 2 hyva module, magento 2 luma module, hyva alpine.js, magento 2 css variables, magento 2 theming, magento 2 accessible ui, magento 2.4.8 custom options, php 8.4 magento module, magento 2 monogram, magento 2 engraving, magento 2 gift options, magento 2 add-ons, mage2kishan, mage2sk, panth infotech, kishan savaliya magento, hire magento developer upwork, top rated plus magento freelancer, magento 2 development agency, custom magento development, magento 2 hyva development, magento 2 luma customization
| Module Category | Catalog & Products |
|---|---|
| Best For | All Sizes |
No. All price-delta logic continues to flow through Magento's standard priceBox and price-option JS components. This module only replaces the visual rendering.
Yes. All your existing custom options (set up under Admin > Catalog > Products > [Product] > Customizable Options) automatically render in the new styled UI. No migration required.
Yes. Magento's native file type and size validation continues to work, with better visual feedback for the customer (file name preview, size check, remove button, error states).
The master toggle is global. For per-product control, you can override the layout on a single product page using the standard Magento layout update XML.
Yes. The module uses the Hyva theme parent chain - any Hyva child theme automatically inherits the styled templates.
Yes. Custom options on configurable products (the parent product, not the simple variants) render with the new UI. Configurable variant selection remains Magento-native.
Yes. Full source on GitHub at github.com/mage2sk/module-custom-options.
Yes. Settings respect Magento's standard scope hierarchy (default > website > store view). Different store views can have different primary colors or even disable the styling entirely.
Panth Malware Scanner is built specifically for Magento 2 filesystems — it understands the directory layout, knows which folders are writable from the frontend, and ships signatures tuned for Magento-targeted threats (Magecart skimmers, PolyShell webshells, admin-layout injection). Traditional AV tools scan everything with generic signatures and produce noise.
Yes. The module ships dedicated Hyva templates built with Alpine.js and Tailwind CSS. Theme detection is automatic via Panth_Core.
No. Panth Core is completely free and will remain free forever. It is the foundation library that other (paid) Panth extensions depend on.
No. Merchant-authored labels (anything other than empty, the product name, Image, main product photo, or the raw filename) are preserved. Only Magento's default placeholders get upgraded to template output.
No — any valid WhatsApp number works. However, a WhatsApp Business account is strongly recommended for commercial use (auto-replies, labels, catalog).
Yes, on the product detail page. When the module is enabled, the default gallery.phtml is replaced with the Panth gallery (one template for Hyva, another for Luma — chosen automatically).
Unlimited. Each form has a unique identifier and its own submissions scope.
No. The head block is cacheable="true" so the full JSON-LD payload is baked into full-page cache. Providers only run on uncached renders; cached hits serve the pre-rendered <script> tag with zero PHP evaluation.
Yes. The module ships with two purpose-built templates — Alpine.js + Tailwind for Hyva and vanilla JS for Luma — and auto-switches based on your active storefront theme.
Yes. When enabled, Panth Footer takes over the footer.container block and renders its own configurable footer. You can disable it any time to restore the default footer.
Talk to Kishan directly — written quote, scope and timeline within 24 hours. No sales call.
Custom Product Options for Magento 2 (Hyva + Luma)