Magento – Use of other Folders under vendor in Magento 2

composerdevelopmentmagento2

I am used to Magento 1.x, now It's really confusing to understand the Magento 2.0.x structure.

I am trying to do it. Please help me to understand what is the function of the following folders below vender (Except magento folder)

( bin, braintree, composer, doctrine, fabpot, justinrainbow, league, lusitanian, monolog, oyejorge, pdepend, pelago, phpmd, phpseclib, phpunit, psr, sebastian, seld, sjparkinson, squizlabs, symfony, tedivm, tubalmartin, zendframework )

Is that related to our development? Or those are just some Library files, which need to be keep there?

Best Answer

These PHP libraries are installed as external dependencies via composer and fall into three categories

  1. libraries that Magento uses. For example: zendframework, monolog, braintree
  2. libraries that the Magento development tools use (bin/magento, the test framework). For example: phpunit, pdepend, phpmd, symfony
  3. libraries that composer itself uses. For example: composer, justinrainbow, symfony (yes, again. The symfony console)

"composer" also contains the PSR-4 autoloader generated by composer (autoload.php).

"bin" is special, as it is not a library on its own but contains symlinks to executable scripts from the dependencies (like "phpunit")

Related Topic