A Magento 2 dashboard to display installed extensions. Read the blog post on some of the thinking behind it:

Overview

Extension Dashboard for Magento 2

This module adds a dashboard to review all installed extensions in the Magento admin (Magento 2.3.0+ for now only).

Screenshots

Screenshot Dashboard

Screenshot Admin > System > Extension Dashboard

Installation

We strongly recommend to always make changes to a Magento 2 site through a development environment that runs in the Developer Mode:

bin/magento deploy:mode:set developer

Add this Git repository to composer and then install the composer package:

composer config repositories.extdndash git https://github.com/extdn/extension-dashboard-m2.git
composer require extdn/extension-dashboard-m2:dev-master

Next, enable the module:

bin/magento module:enable Extdn_ExtensionDashboard
bin/magento setup:upgrade

Next, follow the usual procedure to push changes from the development environment to production (for example with bin/magento deploy:mode:set production).

Extension feeds

This dashboard is being fed through feeds: Either a CSV-file or a remote resource that allows you to define version-information. Currently, the following is supported:

  • Define a new DI VirtualType (see di.xml) to use the ComposerFeedProvider to load information from Packagist.
  • Use the CsvFeedProvider to load information from a local CSV file.
  • Add a custom provider to the listing of providers.

Todo

  • Move extension feeds to different submodules?
  • Automatically fetch information from Packagist on existing extensions, if available.
Comments
  • Does not work with Magento 2.4

    Does not work with Magento 2.4

    Installed via Composer on Magento 2.4.3-p1. After running and compiling: an Exception error is shown instead of the module list on Extension Dashboard page.

    opened by jq91 2
  • Error in composer require on 2.4.1

    Error in composer require on 2.4.1

    Command composer require extdn/extension-dashboard-m2:dev-master terminates with error

    Your requirements could not be resolved to an installable set of packages.

    Problem 1 - magento/framework 102.0.0 requires php ~7.1.3||~7.2.0 -> your PHP version (7.3.19) does not satisfy that requirement. - magento/framework 102.0.1 requires php ~7.1.3||~7.2.0 -> your PHP version (7.3.19) does not satisfy that requirement. - magento/framework 102.0.2 requires php ~7.1.3||~7.2.0 -> your PHP version (7.3.19) does not satisfy that requirement. - magento/framework 102.0.2-p2 requires php ~7.1.3||~7.2.0 -> your PHP version (7.3.19) does not satisfy that requirement. - Installation request for extdn/extension-dashboard-m2 dev-master -> satisfiable by extdn/extension-dashboard-m2[dev-master]. - Conclusion: remove laminas/laminas-code 3.4.1 - Conclusion: don't install laminas/laminas-code 3.4.1 - extdn/extension-dashboard-m2 dev-master requires magento/framework ^102.0.0 -> satisfiable by magento/framework[102.0.6, 102.0.5-p2, 102.0.4-p2, 102.0.5, 102.0.3-p1, 102.0.4, 102.0.2-p2, 102.0.3, 102.0.2, 102.0.1, 102.0.0]. - magento/framework 102.0.6 requires laminas/laminas-code ~3.3.0 -> satisfiable by laminas/laminas-code[3.3.0, 3.3.1, 3.3.2]. - magento/framework 102.0.5-p2 requires laminas/laminas-code ~3.3.0 -> satisfiable by laminas/laminas-code[3.3.0, 3.3.1, 3.3.2]. - magento/framework 102.0.4-p2 requires zendframework/zend-code ~3.3.0 -> satisfiable by laminas/laminas-code[3.3.0, 3.3.1, 3.3.2], zendframework/zend-code[3.3.0, 3.3.1, 3.3.2]. - magento/framework 102.0.5 requires laminas/laminas-code ~3.3.0 -> satisfiable by laminas/laminas-code[3.3.0, 3.3.1, 3.3.2]. - magento/framework 102.0.3-p1 requires zendframework/zend-code ~3.3.0 -> satisfiable by laminas/laminas-code[3.3.0, 3.3.1, 3.3.2], zendframework/zend-code[3.3.0, 3.3.1, 3.3.2]. - magento/framework 102.0.4 requires zendframework/zend-code ~3.3.0 -> satisfiable by laminas/laminas-code[3.3.0, 3.3.1, 3.3.2], zendframework/zend-code[3.3.0, 3.3.1, 3.3.2]. - magento/framework 102.0.3 requires zendframework/zend-code ~3.3.0 -> satisfiable by laminas/laminas-code[3.3.0, 3.3.1, 3.3.2], zendframework/zend-code[3.3.0, 3.3.1, 3.3.2]. - Can only install one of: laminas/laminas-code[3.3.0, 3.4.1]. - Can only install one of: laminas/laminas-code[3.3.1, 3.4.1]. - Can only install one of: laminas/laminas-code[3.3.2, 3.4.1]. - don't install zendframework/zend-code 3.3.0|don't install laminas/laminas-code 3.4.1 - don't install zendframework/zend-code 3.3.1|don't install laminas/laminas-code 3.4.1 - don't install zendframework/zend-code 3.3.2|don't install laminas/laminas-code 3.4.1 - Installation request for laminas/laminas-code (locked at 3.4.1) -> satisfiable by laminas/laminas-code[3.4.1].

    Installation failed, reverting ./composer.json to its original content.

    opened by rav-redchamps 2
  • Minimum Stability?

    Minimum Stability?

    When I was trying to use the installation instructions from the README.md file, I ended up in the following situation

    $ composer require extdn/extension-dashboard-m2
                                                          
                                                              
      [InvalidArgumentException]                                      
      Could not find package extdn/extension-dashboard-m2 at any ver  
      sion for your minimum-stability (beta). Check the package spe  
      lling or your minimum-stability                                 
                                                              
    
    require [--dev] [--prefer-source] [--prefer-dist] [--no-progress] [--no-suggest] [--no-update] [--no-scripts] [--update-no-dev] [--update-with-dependencies] [--ignore-platform-reqs] [--prefer-stable] [--prefer-lowest] [--sort-packages] [-o|--optimize-autoloader] [-a|--classmap-authoritative] [--apcu-autoloader] [--] [<packages>]...
    

    and I needed to bump my minimum stability all the way down to dev in order to get this working.

    I would be nice I hadn't needed to do this.

    opened by astorm 2
  • I installed on 2.3.5-P1 community edition and it bricked my admin login.

    I installed on 2.3.5-P1 community edition and it bricked my admin login.

    You really need to note that this extension is out of date or broken.

    After installation i was unable to login to admin. I did all the usual php bin/magento commands after installing extensions to try to recover functionality.

    I don't have logs because i had to restore my server immediately after but there were lots of errors about admin backend elements missing..

    opened by ghost 2
  • The `composer require` Command Fails

    The `composer require` Command Fails

    When trying to follow the installation instructions in the README.md, composer require extdn/extension-dashboard-m2 fails to install the extension due to (what looks like) a strange set of dependency conflicts.

    My composer.json is included below. This composer.json file came from a composer create-project ... style installation and I've been using it as a testing instance for a number of years. In other words I think its pretty standard.

    When the failure happened I tried deleting my vendor folder and re running composer install before running composer require extdn/extension-dashboard-m2 again with the same results.

    Here's the errors

        $ composer require extdn/extension-dashboard-m2
        Using version dev-master for extdn/extension-dashboard-m2     
        ./composer.json has been updated
        Loading composer repositories with package information
        Updating dependencies (including require-dev)                 
        Your requirements could not be resolved to an installable set of packages.
    
          Problem 1
            - Conclusion: don't install composer/composer 1.8.4
            - Conclusion: don't install composer/composer 1.8.3
            - Conclusion: don't install composer/composer 1.8.2
            - Conclusion: don't install composer/composer 1.8.1
            - Conclusion: don't install composer/composer 1.8.0
            - Conclusion: don't install composer/composer 1.7.3
            - Conclusion: don't install composer/composer 1.7.2
            - Conclusion: don't install composer/composer 1.7.1
            - Conclusion: don't install composer/composer 1.7.0
            - Conclusion: don't install composer/composer 1.7.0-RC
            - Conclusion: don't install composer/composer 1.6.5
            - Conclusion: don't install composer/composer 1.6.4
            - Conclusion: don't install composer/composer 1.6.3
            - Conclusion: don't install composer/composer 1.6.2
            - Conclusion: don't install composer/composer 1.6.1
            - Conclusion: don't install composer/composer 1.6.0
            - Installation request for extdn/extension-dashboard-m2 dev-master -> satisfiable by extdn/extension-dashboard-m2[dev-master].
            - Installation request for magento/product-community-edition 2.2.0 -> satisfiable by magento/product-community-edition[2.2.0].
            - extdn/extension-dashboard-m2 dev-master requires magento/framework ^102.0.0 -> satisfiable by magento/framework[102.0.0-alpha79, 102.0.0-beta18, 102.0.0-beta23, 102.0.0-beta32, 102.0.0].
            - magento/framework 102.0.0 requires composer/composer ^1.6 -> satisfiable by composer/composer[1.6.0, 1.6.0-RC, 1.6.1, 1.6.2, 1.6.3, 1.6.4, 1.6.5, 1.7.0, 1.7.0-RC, 1.7.1, 1.7.2, 1.7.3, 1.8.0, 1.8.1, 1.8.2, 1.8.3, 1.8.4].
            - magento/framework 102.0.0-beta32 requires composer/composer ^1.6 -> satisfiable by composer/composer[1.6.0, 1.6.0-RC, 1.6.1, 1.6.2, 1.6.3, 1.6.4, 1.6.5, 1.7.0, 1.7.0-RC, 1.7.1, 1.7.2, 1.7.3, 1.8.0, 1.8.1, 1.8.2, 1.8.3, 1.8.4].
            - magento/framework 102.0.0-beta23 requires composer/composer ^1.6 -> satisfiable by composer/composer[1.6.0, 1.6.0-RC, 1.6.1, 1.6.2, 1.6.3, 1.6.4, 1.6.5, 1.7.0, 1.7.0-RC, 1.7.1, 1.7.2, 1.7.3, 1.8.0, 1.8.1, 1.8.2, 1.8.3, 1.8.4].
            - magento/framework 102.0.0-beta18 requires composer/composer ^1.6 -> satisfiable by composer/composer[1.6.0, 1.6.0-RC, 1.6.1, 1.6.2, 1.6.3, 1.6.4, 1.6.5, 1.7.0, 1.7.0-RC, 1.7.1, 1.7.2, 1.7.3, 1.8.0, 1.8.1, 1.8.2, 1.8.3, 1.8.4].
            - magento/framework 102.0.0-alpha79 requires composer/composer ^1.6 -> satisfiable by composer/composer[1.6.0, 1.6.0-RC, 1.6.1, 1.6.2, 1.6.3, 1.6.4, 1.6.5, 1.7.0, 1.7.0-RC, 1.7.1, 1.7.2, 1.7.3, 1.8.0, 1.8.1, 1.8.2, 1.8.3, 1.8.4].
            - Conclusion: don't install composer/composer 1.6.0-RC
    
    
        Installation failed, reverting ./composer.json to its original content.
    

    and here's my composer.json

    {
        "name": "magento/project-community-edition",
        "description": "eCommerce Platform for Growth (Community Edition)",
        "type": "project",
        "version": "2.2.0",
        "license": [
            "OSL-3.0",
            "AFL-3.0"
        ],
        "require": {
            "magento/product-community-edition": "2.2.0",
            "composer/composer": "@alpha",
            "rubic/magento2-module-clean-checkout": "^1.2",
            "magento/module-bundle-sample-data": "100.2.*",
            "magento/module-catalog-sample-data": "100.2.*",
            "magento/module-customer-sample-data": "100.2.*",
            "magento/module-theme-sample-data": "100.2.*",
            "magento/module-widget-sample-data": "100.2.*",
            "magento/module-cms-sample-data": "100.2.*",
            "magento/module-review-sample-data": "100.2.*",
            "magento/module-tax-sample-data": "100.2.*",
            "magento/module-msrp-sample-data": "100.2.*",
            "magento/module-sales-sample-data": "100.2.*",
            "magento/module-catalog-rule-sample-data": "100.2.*",
            "magento/module-configurable-sample-data": "100.2.*",
            "magento/module-product-links-sample-data": "100.2.*",
            "magento/module-wishlist-sample-data": "100.2.*",
            "magento/module-sales-rule-sample-data": "100.2.*",
            "magento/module-downloadable-sample-data": "100.2.*",
            "magento/module-grouped-product-sample-data": "100.2.*",
            "magento/module-swatches-sample-data": "100.2.*",
            "magento/sample-data-media": "100.2.*",
            "magento/module-offline-shipping-sample-data": "100.2.*"
        },
        "require-dev": {
            "phpunit/phpunit": "~6.2.0",
            "squizlabs/php_codesniffer": "3.0.1",
            "phpmd/phpmd": "@stable",
            "pdepend/pdepend": "2.5.0",
            "friendsofphp/php-cs-fixer": "~2.1.1",
            "lusitanian/oauth": "~0.8.10",
            "sebastian/phpcpd": "2.0.4"
        },
        "autoload": {
            "psr-4": {
                "Magento\\Framework\\": "lib/internal/Magento/Framework/",
                "Magento\\Setup\\": "setup/src/Magento/Setup/",
                "Magento\\": "app/code/Magento/"
            },
            "psr-0": {
                "": [
                    "app/code/"
                ]
            },
            "files": [
                "app/etc/NonComposerComponentRegistration.php"
            ],
            "exclude-from-classmap": [
                "**/dev/**",
                "**/update/**",
                "**/Test/**"
            ]
        },
        "autoload-dev": {
            "psr-4": {
                "Magento\\Sniffs\\": "dev/tests/static/framework/Magento/Sniffs/",
                "Magento\\Tools\\": "dev/tools/Magento/Tools/",
                "Magento\\Tools\\Sanity\\": "dev/build/publication/sanity/Magento/Tools/Sanity/",
                "Magento\\TestFramework\\Inspection\\": "dev/tests/static/framework/Magento/TestFramework/Inspection/",
                "Magento\\TestFramework\\Utility\\": "dev/tests/static/framework/Magento/TestFramework/Utility/"
            }
        },
        "minimum-stability": "dev",
        "repositories": {
            "0": {
                "type": "composer",
                "url": "https://repo.magento.com/"
            },
            "extdndash": {
                "type": "git",
                "url": "https://github.com/extdn/extension-dashboard-m2.git"
            }
        },
        "extra": {
            "magento-force": "override"
        }
    }
    
    opened by astorm 1
Owner
ExtDN
We are a network of leading Magento extension developers who share a common vision for a thriving Magento ecosystem with the merchant's success at heart.
ExtDN
Universal extension installer for Magento 2, see introductory blog post here

ExtDN Installer for Magento 2 modules The installation of extensions for Magento 2 has a few scenarios to cover depending on your starting position (M

ExtDN 26 Apr 1, 2022
This library uses GD and EXIF (optional) PHP extensions so make sure you have them installed.

simple and fast image processing class that can downscale, compress and convert images using php-gd native functions

Leon 8 Jul 15, 2022
Allows installing Drupal extensions event if not compatible with installed drupal/core package

mglaman/composer-drupal-lenient Lenient with it, Drupal 10 with it. Why? The Drupal community introduced a lenient Composer facade that modified the d

Matt Glaman 14 Dec 18, 2022
Magento 2 Blog Extension is a better blog extension for Magento 2 platform. These include all useful features of Wordpress CMS

Magento 2 Blog extension FREE Magento 2 Better Blog by Mageplaza is integrated right into the Magento backend so you can manage your blog and your e-c

Mageplaza 113 Dec 14, 2022
Display some useful information in the reports module.

Useful information in the reports module : xclass, ajax, cliKeys, eID, general status of the system (encoding, DB, php vars...), hooks, compare local and TER extension (diff), used content type, used plugins, ExtDirect... It can really help you during migration or new existing project (to have a global reports of the system).

CERDAN Yohann 12 Aug 8, 2022
Magento 2 Blog Extension - FREE, fully featured, powerful Blog solution for your online store!

Blog MX | Magento 2 Blog Module by Mirasvit FREE, fully featured, powerful Blog solution for your online store! Magento 2 Blog MX allows you to open a

Mirasvit 71 Dec 7, 2022
Magento 2 Blog is an extension that allows you to manage your store and blog

Magento 2 Blog Extension by Magefan Magento 2 Blog is an extension that allows you to manage your store and blog from one place without having to rely

Magefan 243 Dec 21, 2022
This project backports features found in the latest PHP versions and provides compatibility layers for some extensions and functions

This project backports features found in the latest PHP versions and provides compatibility layers for some extensions and functions. It is intended to be used when portability across PHP versions and extensions is desired.

Symfony 2.2k Dec 29, 2022
Docker-magento2 - 🐳 Docker containers with all required Magento 2 dependencies installed available as FPM through Nginx and CLI

Magento 2 Docker A collection of Docker images for running Magento 2 through nginx and on the command line. Quick Start cp composer.env.sample compose

Meanbee 454 Dec 27, 2022
This tool can help you to see the real IP behind CloudFlare protected websites.

CrimeFlare Bypass Hostname Alat untuk melihat IP asli dibalik website yang telah dilindungi CloudFlare. Introduction Alat ini berfungsi untuk melakuka

zidan rahmandani 126 Oct 20, 2021
Source code behind aschmelyun.com, built with Cleaver

Andrew Schmelyun's Site This is the source code behind my site, aschmelyun.com. Right now it's built with Cleaver, another one of my projects, and com

Andrew Schmelyun 3 Mar 25, 2022
Laravel Blog Package. Easiest way to add a blog to your Laravel website. A package which adds wordpress functionality to your website and is compatible with laravel 8.

Laravel Blog Have you worked with Wordpress? Developers call this package wordpress-like laravel blog. Give our package a Star to support us ⭐ ?? Inst

Binshops 279 Dec 28, 2022
bin/magento command to display configured preferences for classes or interfaces

bin/magento command to display configured preferences for classes or interfaces A bin/magento command that will show you the configured preferences fo

David Manners 14 Jul 18, 2022
This component provides a collection of functions/classes using the symfony/intl package when the Intl extension is not installed.

Symfony Polyfill / Intl: ICU This package provides fallback implementations when the Intl extension is not installed. It is limited to the "en" locale

Symfony 2.4k Jan 6, 2023
Installed composer packages info

PackageInfo This package was highly inspired from ocramius/package-versions I needed some methods to read data from the composer.lock file fast...this

Martin Keckeis 7 Jun 2, 2022
Composer addon to efficiently get installed packages' version numbers

Package Versions composer/package-versions-deprecated is a fully-compatible fork of ocramius/package-versions which provides compatibility with Compos

Composer 1.4k Dec 27, 2022
Modularize extensions using symlinks. Voted #1 Magento tool by @WebShopApps!

modman (Module Manager) Developing extensions for software that doesn't allow you to separate your files from core files, and keeping that extension u

Colin Mollenhour 731 Dec 29, 2022
GitHub Actions for Magento 2 Extensions

GitHub Actions for Magento 2 Extensions This repository's aim is to provide a set of open sourced GitHub actions to write better tested Magento 2 exte

ExtDN 104 Jan 1, 2023
List of Magento extensions with known security issues.

Magento Vulnerability Database List of Magento 1 and 2 integrations with known security issues. Objective: easily identify insecure 3rd party software

Sansec 184 Dec 7, 2022