Enable/ Disable Magento 2 Developer Mode

The Magento 2 platform offers three modes for users which are default mode, developer mode, and production mode. Depend on specific situations, store admin can apply different modes for their Magento store.

In today’s post, I will provide you the basic knowledge about the How to Enable/ Disable Developer Mode in Magento 2, and the methods you can use to enable and disable it.

How to Enable/ Disable Developer Mode in Magento 2?

What is Developer Mode

The Developer mode of Magento is the mode you will use when you need to customize your Magento 2 or when you want to install extensions. More specifically, it will be used in the following situations:

  • Publish a symlink of each required file to the pub/static directory
  • Uncaught exceptions are seen in the browser
  • The system logging in var/report is verbal. Put the exception into the error handler
  • Generate the exception if an event subscriber cannot be enforced.

Magento 2 provides 4 different modes including Default, Developer, Maintenance, and Production. Among them, Developer mode is the best solution for Magento 2 developers because it covers all types of development options available for developers in Magento 2, including:

  • Does not cache static files
  • Automatically compiles the code
  • Show a detailed error log on the screen
  • Enable advance code debugging
  • Work slowly

Magento 2 Check Developer Mode

Magento 2 Check Developer Mode

To check the current mode, the following command needs to be run as the Magento file system owner:

bin/magento deploy:mode:show

If you have shared hosting, this would be the user which your provider gives you to log in to the server. On the contrary, if your server is private, it’s a local user account on the Magento server.

After you have run the above command, a message which is similar to this will be displayed:

Current application mode: {mode}. 

Note: Environment variables may override this value. And the {mode} can be default, developer, or production.

Enable Magento 2 Developer Mode

Before enabling the Developer Mode, you need to ensure that generated classes and Object Manager entities like proxies have been clear. Otherwise, unexpected errors might probably occur. Once you have clear them, you can start changing your mode from production to developer by following these steps:

  • Step 1: In this first step, delete the generated/code and generated/metadata directories’ contents:
rm -rf <your Magento install dir>/generated/metadata/* <your Magento install dir>/generated/code/*
  • Step 2: Next, you can set the mode:
bin/magento deploy:mode:set developer

After the mode has been set, you will see the following message:

Enabled developer mode.

Disable Magento 2 Developer mode

Above I have just shown you the method to enable Developer mode. However, in various situations, you would need to change the mode back from Developer to Production. And this is how you do it:

Firstly, set the mode to Production.

bin/magento deploy:mode:set production

After you have set the mode, you will see messages which are similar this:

Enabled maintenance mode
Requested languages: en_US
=== frontend -> Magento/luma -> en_US ===
... more ...
Successful: 1884 files; errors: 0
---

=== frontend -> Magento/blank -> en_US ===
... more ...
Successful: 1828 files; errors: 0
---

=== adminhtml -> Magento/backend -> en_US ===
... more ...
---

=== Minify templates ===
... more ...
Successful: 897 files modified
---

New version of deployed files: 1440461332
Static content deployment complete Gathering css/styles-m.less sources. Successfully processed LESS and/or   <span term-uuid="45f1f76d-91cd-4789-a8b5-1e3f321a6280" class="glossary-term" data-toggle="popover">Sass</span>  files   <span term-uuid="6c5cb4e9-9197-46f2-ba79-6147d9bfe66d" class="glossary-term" data-toggle="popover">CSS</span>  deployment complete Generated classes:
    Magento\Sales\Api\Data\CreditmemoCommentInterfacePersistor
    Magento\Sales\Api\Data\CreditmemoCommentInterfaceFactory
    Magento\Sales\Api\Data\CreditmemoCommentSearchResultInterfaceFactory
    Magento\Sales\Api\Data\CreditmemoComment\Repository
    Magento\Sales\Api\Data\CreditmemoItemInterfacePersistor
    ... more ...
Compilation complete
Disabled maintenance mode
Enabled production mode.

Conclusion

In conclusion, the Developer mode which the Magento 2 platform offers is essential for store owners in various particular situations. I hope the above information can provide you the necessary details for activating and deactivating Developer mode.

Enjoyed the tutorial? Spread it to your friends!