This is a beta release of documentation for Magento 2.4, published for previewing soon-to-be-released functionality. Content in this version is subject to change. Links to the v2.4 code base may not properly resolve until the code is officially released.

Technology stack

Overview

This page summarizes the technologies we use. For more detailed information, see the System Requirements.

Magento’s highly modular structure includes the following open-source technologies.

Web servers

PHP

  • Composer (dependency management package for PHP)

Database

  • MySQL
  • MySQL Percona
  • Elasticsearch

HTTP accelerator

  • Varnish

Cache Storage

  • Redis

Additional technologies

  • HTML5
  • CSS3 (LESS CSS pre-processor)
  • jQuery (primary JavaScript library)
  • RequireJS (library that helps load JavaScript resources on demand)
  • Knockout.js (simplifies JavaScript UIs with the Model-View-View Model pattern)
  • Third-party libraries (Zend Framework 1, Zend Framework 2, Laminas, Symfony)
  • Coding standards PSR-0 (autoloading standard), PSR-1 (basic coding standards), and PSR-2 (coding style guide), PSR-3, PSR-4

For Magento 2.3.5, we have started porting unsupported Zend components to the Laminas framework.

Optional stack components

  • Varnish (caching)
  • Redis (used for page caching)
  • RabbitMQ (message queue)

Automated testing

Magento also provides automated testing suites that include unit, integration, functional and performance test scripts, as well as JavaScript tests and tools for static code analysis. Components include PHPUnit for the unit test framework and Selenium for the functional test framework.

Testing frameworks are located in the dev/tests directory. Refer to our Magento Testing Guide to learn more about the frameworks and associated tests.

The Magento Functional Test Framework (MFTF) is the successor to MTF. You can read more in the Intro to MFTF. The functional testing framework mftf can be found in a separate repository.

Related topics

Architectural basics