Chat on WhatsApp

Magento 2 Base Module (Required Library)

Free, mandatory dependency for the entire Panth Infotech extension suite on the Adobe Commerce Marketplace.

Magento 2.4.6–2.4.8 PHP 8.1–8.4 Hyva + Luma Ready Free

Key Features:

  • Shared Admin Foundation
  • Developer Utilities
  • Quality of Life
  • Security & Performance

Additional Services

$0.00
In stock
SKU
panth-core
Links
Pay with Wise
Lifetime Updates Every Magento release
1-Year Free Support Email + WhatsApp
Adobe-Certified Magento 2 Developer
Free Forever No subscription, no upsell
What you get

Everything in the box

Built-in from day one. No add-ons, no upsell, no licence keys to renew.

Shared Admin Foundation

Unified admin menu — all Panth extensions appear under a single Panth Infotech sidebar entry

Developer Utilities

Panth\Core\Helper\Theme — detect whether the current store is running Hyva or Luma (used by 30+ Panth extensions to switch templates)

Quality of Life

Grid data-provider fix — patches the well-known Magento bug where SearchResult virtual types return null from getCustomAttributes() in de…

Security & Performance

MEQP compliant — passes Adobe's Magento Extension Quality Program with zero severity-10 violations

Overview

Panth Core is a shared foundation module for Magento 2 and Adobe Commerce that unifies the admin UX, version reporting, and theme detection across every Panth extension on your store.

The Panth Core module replaces the noisy, duplicated admin sidebar that appears when you install several vendor extensions with a single, organized “Panth Extensions” namespace — configuration groups, ACL resources, and content menus all live under one parent. A central version registry surfaces every installed Panth module on a single screen so you can verify exactly which builds are live without grepping composer.lock.

Theme detection ships out of the box: Panth Core probes parent-chain signals to identify whether the storefront is running Hyva or Luma, so downstream modules render the right assets without configuration. The receiver-hardened install and heartbeat reporter keeps telemetry quiet and resilient when the network is flaky, and every API call defers when the receiver is offline so nothing blocks the admin. Panth Core is also a soft dependency of every other Panth Magento 2 extension, so installing it once means every future Panth module on the store inherits the same admin namespace and the same theme-aware asset pipeline without per-module configuration.

Best for:

  • Stores running three or more Panth extensions that want one clean admin namespace.
  • Hyva + Luma dual-theme deployments where modules must auto-detect frontend stack.
  • Agencies tracking module versions across multiple client installs.

Why Panth Core Exists

When you install multiple extensions from the same vendor on Magento 2, you typically face three problems:

  1. Cluttered admin sidebar — every extension creates its own top-level menu entry
  2. Duplicate utilities — each extension reimplements theme detection, config helpers, and shared services
  3. Inconsistent UX — each extension follows its own conventions for admin configuration

Panth Core solves all three by providing a single shared foundation that every Panth extension hooks into:

  • One unified Panth Infotech admin sidebar entry
  • One consistent Stores → Configuration → Panth Extensions settings home
  • One shared Panth\Core\Helper\Theme for Hyva/Luma detection
  • One shared panth_modules.xml registry for the extensions overview page

This means whether you install 1 or 34 Panth extensions, the admin experience stays clean, fast, and consistent.


What you get

Panth Core ships the cross-cutting plumbing every Panth Magento 2 extension depends on.

  • Unified “Panth Extensions” admin sidebar that consolidates configuration groups.
  • Central version registry showing every installed Panth module on one screen.
  • Theme detection for Hyva and Luma with parent-chain signal checks.
  • Install + heartbeat reporter hardened against receiver outages.
  • Compatible with Magento 2.4.4 to 2.4.9 and PHP 8.1 to 8.4.

Key Features

Shared Admin Foundation

  • Unified admin menu — all Panth extensions appear under a single Panth Infotech sidebar entry
  • Centralized configuration — every Panth extension's settings live under Stores → Configuration → Panth Extensions
  • Core Settings section — global toggles for debug mode, caching, and module status

Developer Utilities

  • Panth\Core\Helper\Theme — detect whether the current store is running Hyva or Luma (used by 30+ Panth extensions to switch templates)
  • Panth\Core\ViewModel\ThemeConfig — inject theme tokens into frontend templates
  • Panth\Core\Api\ThemeBuildExecutorInterface — optional contract for triggering theme builds from admin

Quality of Life

  • Grid data-provider fix — patches the well-known Magento bug where SearchResult virtual types return null from getCustomAttributes() in developer mode
  • Cron heartbeat — lightweight cron job that records last-run timestamps for diagnostics (with admin opt-out)
  • Module registry — declarative panth_modules.xml lists every installed Panth extension for the overview page

Security & Performance

  • MEQP compliant — passes Adobe's Magento Extension Quality Program with zero severity-10 violations
  • Zero dependencies on third-party libraries — uses only Magento framework classes
  • Lightweight — under 50 PHP files, minimal memory footprint
  • Composer-installable — no manual file copying required

What's Inside

Panth_Core/
├── Api/
│ ├── ThemeBuildExecutorInterface.php # Optional contract for theme builds
│ └── Data/
├── Block/
│ └── Adminhtml/ # Admin block helpers
├── Controller/
│ └── Adminhtml/ # Admin controllers
├── Cron/
│ └── Heartbeat.php # Lightweight diagnostics cron
├── Helper/
│ ├── Data.php # General config helper
│ └── Theme.php # Hyva/Luma theme detection
├── Model/
│ ├── Config/ # Configuration sources and backends
│ └── ModuleRegistry.php # Reads panth_modules.xml
├── Observer/ # Event observers
├── Plugin/
│ └── GridDataProvider.php # Magento grid bug fix
├── Service/ # Reusable services
├── Setup/
│ └── Patch/Data/ # Data patches
├── ViewModel/
│ └── ThemeConfig.php # Frontend theme config injector
├── etc/
│ ├── adminhtml/
│ │ ├── menu.xml # "Panth Infotech" sidebar entry
│ │ ├── routes.xml
│ │ └── system.xml # Core Settings config UI
│ ├── crontab.xml
│ ├── di.xml
│ ├── module.xml
│ └── panth_modules.xml # Module registry
└── view/
 ├── adminhtml/
 └── frontend/

Theme Detection

Panth Core's theme detection logic checks multiple signals to reliably identify whether the storefront is running Hyva or Luma:

  1. Module check — is Hyva_Theme enabled?
  2. Theme path check — does the active theme's path explicitly contain a Luma marker?
  3. Parent theme check — does the theme's parent chain include Hyva/default?

This multi-signal approach correctly handles edge cases like:

  • Hyva child themes
  • Luma child themes
  • Mixed installations where Hyva module exists but a Luma theme is active
  • Custom themes with non-standard parent chains

The result is cached per-request via $cachedThemeType to avoid repeated database lookups.


Module Registry

The etc/panth_modules.xml file declares every Panth extension installed on the store. Each Panth extension contributes its own entry through DI configuration:

<config>
 <module name="Panth_AdvancedSEO" version="1.0.0">
 <label>Advanced SEO</label>
 <description>Enterprise-grade SEO suite</description>
 <admin_url>panth_seo/dashboard/index</admin_url>
 </module>
</config>

The registry is consumed by the Panth Infotech admin overview page, which displays installed extensions, their versions, and links to their config sections. This gives merchants a single dashboard to see and manage all Panth extensions.


Cron Heartbeat

Panth Core registers a lightweight cron job (panth_core_heartbeat) that runs every hour and records the last execution timestamp. This is useful for:

  • Diagnostics — confirming cron is running
  • Health checks — external monitoring tools can read the timestamp
  • Telemetry opt-in — anonymous module-version tracking (off by default, requires explicit admin opt-in)

To disable the heartbeat entirely, set Cron Heartbeat to No in Core Settings.


Grid Bug Fix

A well-known Magento bug causes admin grids to crash in developer mode when virtual types extending SearchResult return null from getCustomAttributes(). Panth Core ships a plugin (Panth\Core\Plugin\GridDataProvider) that patches this by returning an empty array instead of null.

This fix is applied silently and only affects grids that would otherwise throw errors. It does not modify any product data or alter grid behaviour in production mode.


Troubleshooting

Issue Cause Resolution
Class Panth\Core\Helper\Theme not found Module not enabled or DI compile not run Run bin/magento module:enable Panth_Core && bin/magento setup:di:compile
Admin sidebar missing Panth Infotech entry Cache not flushed Run bin/magento cache:flush and refresh admin
Core Settings section missing ACL not refreshed Log out and back in to admin
Grid bug fix not applying Conflict with another grid plugin Check app/code for custom plugins on Magento\Framework\Api\SearchResults
Cron heartbeat not running Magento cron not configured Verify bin/magento cron:run is scheduled in your system crontab

For other issues, enable Debug Mode in Core Settings and check var/log/panth_core.log for detailed output.


Compatibility

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
MySQL 8.0+
MariaDB 10.4+
Hyva Theme 1.0+ (optional)
Luma Theme Native support

Tested on:

  • Magento 2.4.8-p4 with PHP 8.4
  • Magento 2.4.7 with PHP 8.3
  • Magento 2.4.6 with PHP 8.2

Installation

Composer Installation (Recommended)

composer require mage2kishan/module-core
bin/magento module:enable Panth_Core
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento setup:static-content:deploy -f
bin/magento cache:flush

Manual Installation via ZIP

  1. Download the latest release ZIP from Packagist or the Adobe Commerce Marketplace
  2. Extract the contents to app/code/Panth/Core/ in your Magento installation
  3. Run the same commands as above starting from bin/magento module:enable Panth_Core

Verify Installation

bin/magento module:status Panth_Core
# Expected output: Module is enabled

After installation, navigate to:

Admin → Stores → Configuration → Panth Extensions → Core Settings

Configuration

Panth Core ships with sensible defaults and requires no configuration to function. The following optional settings are available at Stores → Configuration → Panth Extensions → Core Settings:

Setting Default Description
Enable Panth Core Yes Master toggle for all Panth Core functionality. Disable to bypass all Panth Core hooks.
Debug Mode No Enable verbose logging for Panth Core operations. Useful for development and troubleshooting. Should be disabled in production.
Enable Caching Yes Enable internal caching for theme detection and module registry lookups. Recommended on.
Cron Heartbeat Yes Enable the lightweight cron heartbeat for diagnostics. Disable if you do not want any cron tracking.

Compatibility with Other Panth Extensions

Panth Core is the required dependency for all Panth Infotech extensions. Composer handles this automatically — when you install any Panth extension, Core is pulled in.

All Panth Extensions That Require Core

Extension Composer Package
Advanced SEO mage2kishan/module-advanced-seo
Advanced Contact Us mage2kishan/module-advanced-contact-us
Advanced Cart mage2kishan/module-advancedcart
Banner Slider mage2kishan/module-banner-slider
Cache Manager mage2kishan/module-cachemanager
Checkout Extended mage2kishan/module-checkout-extended
Checkout Success Page mage2kishan/module-checkout-success
Core Web Vitals mage2kishan/module-corewebvitals
Custom Options mage2kishan/module-custom-options
Dynamic Forms mage2kishan/module-dynamic-forms
FAQ mage2kishan/module-faq
Footer mage2kishan/module-footer
Image Optimizer mage2kishan/module-imageoptimizer
Live Activity mage2kishan/module-live-activity
Low Stock Notification mage2kishan/module-low-stock-notification
Malware Scanner mage2kishan/module-malware-scanner
Mega Menu mage2kishan/module-mega-menu
Not Found Page (404) mage2kishan/module-not-found-page
Order Attachments mage2kishan/module-order-attachments
PageBuilder AI mage2kishan/module-pagebuilder-ai
Performance Optimizer mage2kishan/module-performance-optimizer
Price Drop Alert mage2kishan/module-price-drop-alert
Product Attachments mage2kishan/module-product-attachments
Product Gallery mage2kishan/module-productgallery
Product Slider mage2kishan/module-product-slider
Product Tabs mage2kishan/module-producttabs
Quick View mage2kishan/module-quickview
Search Autocomplete mage2kishan/module-search-autocomplete
Smart Badge mage2kishan/module-smart-badge
Testimonials mage2kishan/module-testimonials
Theme Customizer mage2kishan/module-theme-customizer
WhatsApp Integration mage2kishan/module-whatsapp
Zipcode Validation mage2kishan/module-zipcode-validation
Panth Infotech Theme mage2kishan/theme-frontend-panth-infotech

License

Panth Core is free under a proprietary license — see LICENSE.txt. You may install and use it on any number of Magento installations as the required dependency for other Panth extensions.


API Reference

Panth\Core\Helper\Theme

Detect the current frontend theme.

use Panth\Core\Helper\Theme;

class MyBlock extends \Magento\Framework\View\Element\Template
{
 public function __construct(
 Context $context,
 private readonly Theme $themeHelper,
 array $data = []
 ) {
 parent::__construct($context, $data);
 }

 public function isHyvaActive(): bool
 {
 return $this->themeHelper->isHyva();
 }

 public function isLumaActive(): bool
 {
 return $this->themeHelper->isLuma();
 }

 public function getCurrentThemeType(): string
 {
 // Returns 'hyva' or 'luma'
 return $this->themeHelper->getCurrentTheme();
 }
}

Panth\Core\ViewModel\ThemeConfig

Inject theme tokens into frontend templates via layout XML.

<block class="Magento\Framework\View\Element\Template"
 name="my.block"
 template="MyVendor_MyModule::template.phtml">
 <arguments>
 <argument name="view_model" xsi:type="object">
 Panth\Core\ViewModel\ThemeConfig
 </argument>
 </arguments>
</block>
// In template.phtml
$viewModel = $block->getViewModel();
$primary = $viewModel->getColor('primary');
$radius = $viewModel->getRadius('default');

Panth\Core\Api\ThemeBuildExecutorInterface

Optional contract for triggering theme rebuilds from admin. Default implementation returns a friendly "module not installed" payload. If Panth_ThemeCustomizer is installed, it overrides this with the real build executor.

use Panth\Core\Api\ThemeBuildExecutorInterface;

class MyController
{
 public function __construct(
 private readonly ThemeBuildExecutorInterface $themeBuilder
 ) {}

 public function execute()
 {
 $result = $this->themeBuilder->build();
 // $result['success'], $result['message'], $result['output']
 }
}

More Information
Module Category Admin Tools
Best For All Sizes
FAQ

Frequently Asked Questions

Do I have to pay for 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.

Can I use Panth Core without any other Panth extensions?

Technically yes, but there is no practical reason to. Core only provides admin scaffolding and shared utilities — it has no standalone features.

Will Panth Core slow down my store?

No. Core is a thin library with no frontend output and minimal admin overhead. Theme detection and module registry lookups are cached.

Does Panth Core conflict with any other extensions?

No. Core only adds hooks under its own namespace (Panth\Core) and a single admin sidebar entry. It does not modify any Magento core files or override any third-party extension functionality.

Can I uninstall Panth Core?

Only if you uninstall every other Panth extension first. Composer will block the removal otherwise. To uninstall:

composer remove mage2kishan/module-core
bin/magento setup:upgrade
Is the source code available?

Yes. The full source is on GitHub at github.com/mage2sk/module-core.

Does Panth Core work with multi-store setups?

Yes. All settings respect Magento's standard scope hierarchy (default → website → store view).

Does Panth Core support multi-language stores?

Yes. The module includes English translations and the codebase uses Magento's standard __() translation function for all user-facing strings, so it can be translated to any language.


Does this replace Magento's native contact form?

Yes. When the module is enabled, the /contact URL is handled by Panth Advanced Contact Us and the stock Magento_Contact form is bypassed. Disable the module to revert to the native form — no data loss.

Can I add more than 3 custom tabs?

Yes. Both CMS block tabs and attribute tabs support unlimited entries. Add as many as your product requires.

Does Smart Badge slow down my category pages?

No. Badge lookups are indexed and cached per product + store view + customer group, and badge rendering is pure CSS. Typical overhead is under 5ms on listing pages.

Does this module override Magento's `cms/noroute/index` controller?

No. It uses Magento's standard layout update mechanism to replace the block under the content container. The controller itself is untouched.

What triggers a price drop alert?

Any reduction in the final displayed price for the store view where the customer subscribed — catalog regular price, special price, catalog price rule discount, tier pricing, or group pricing. The module compares the current final price against the baseline captured at subscription time.

Does this replace Magento's default product gallery?

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).

Does Panth Search Autocomplete work with Elasticsearch and OpenSearch?

Yes. The module is engine-agnostic — it uses whatever Magento is configured with (Elasticsearch 7, Elasticsearch 8, OpenSearch 1.x/2.x, or the MySQL fallback). No extra setup required.

Does Panth Advanced SEO replace Magento's native SEO features?

It enhances them. Magento's native meta fields still work — Panth Advanced SEO adds template-based defaults, tokens, hreflang groups, JSON-LD, SEO scoring, and dozens of other features Magento ships without.

Will this overwrite my custom image labels?

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.

How is this different from Magento's native "file" custom option?

Native file custom options are tied to the cart quote item and don't persist cleanly as a first-class order record. Panth Order Attachments creates dedicated panth_quote_attachment and panth_order_attachment tables, linked to the sales order item, ensuring files remain accessible for the full order lifetime — including reorders, invoices, and RMAs.

Need this customised?

Talk to Kishan directly — written quote, scope and timeline within 24 hours. No sales call.

WhatsApp

Magento 2 Base Module (Required Library)

$0.00
Step up

Customers usually upgrade to