Elentra Platform Technical Documentation
  • Introduction
  • Reporting Issues
    • Security Notices
  • Administrators
    • Server Requirements
    • Application Server
      • Shibboleth Single Sign-on
      • Installing Supervisor
      • Branded API Setup
      • Installing Mailhog
    • Database Server
  • Developers
    • Getting Started
    • Overview
    • Contributions
      • Request for Change
      • Jira and GitHub Details
      • Coding Standards
      • Quickstart Guide
      • Code Review
    • Database
    • Dataviews for Analytics
    • Global Namespace
    • Elentra ACL
    • Authentication Methods
    • Compatibility Matrix
    • Elentra ME Versions
    • Elentra Settings
    • Elentra Deployment
    • Elentra API
    • Elentra JS
    • Feature Configuration
      • Event Resource Integration
      • Microsoft Teams Integration
    • Troubleshooting & Guides
      • New developer features in Elentra ME 1.22
      • Testing With Codeception
        • Unit Testing
          • Unit Testing Best Practises
          • Writing Unit Testable Code
          • PHPUnit Testing for API
          • PHPUnit Json String Compare Function
        • Functional Testing
          • Functional Testing Best Practices
        • Integration Testing
          • Integration Testing Best Practices
      • Upgrading elentra-developer Docker
      • VS Code Setup
      • Using XDebug in VSCode
      • Upgrading PHP
      • Switching Databases
      • Creating a new virtual host
      • Logging In
      • Composer
      • Curriculum Tag Selector
      • Performance Issues
      • Docker
      • Seed Data Generation
      • Fail Fast Programming
      • Advanced Custom Exception Classes
    • Support
  • Upgrade Guides
    • Upgrading to ME v28.0
    • Upgrading to ME 1.27
    • Upgrading to ME 1.26
    • Upgrading to ME 1.25
    • Upgrading to ME 1.24
    • Upgrading to ME 1.23
    • Upgrading to ME 1.22
    • Upgrading to ME 1.21
    • Upgrading to ME 1.20
    • Upgrading to ME 1.19
    • Upgrading to ME 1.18
    • Upgrading to ME 1.17
    • Upgrading to ME 1.16
    • Upgrading to ME 1.15
Powered by GitBook
On this page
  • Recommended Extensions
  • Visual Studio Code Keyboard Shortcuts
  • PHP in Visual Studio Code
  • Additional Helpful Customization
  1. Developers
  2. Troubleshooting & Guides

VS Code Setup

PreviousUpgrading elentra-developer DockerNextUsing XDebug in VSCode

Last updated 3 years ago

As of August 2021, we will be terminating our license with PHPStorm in favour of VS Code. Over the years VSCode has come a very long way from the basic code editor it used to be at it's infancy, and it's become one of the leading tools that developers rely on for all sorts of projects.

Out of the box, VS Code runs faster than it's Java-based counterparts, and uses a fraction of the resources when compared to full-blown IDEs. Resources aside, PHPStorm and other IDEs spend a lot of time indexing your projects, getting in the way of development and slowing down your workflow.

Out of the box, PHPStorm comes with various tools that make it one of the best IDEs out there. There's no denying that PHPStorm is a great piece of software, however due to the wide adoption of VS Code, and the large number of official extensions, one can easily switch without skipping a beat.

A quick peak at the Activity Monitor shows the massive difference in resources between the two applications:

Recommended Extensions

Here's a list of extensions that we highly recommend to Elentra developers:

Visual Studio Code Keyboard Shortcuts

PHP in Visual Studio Code

Additional Helpful Customization

Initially, you may find the visual layout a bit challenging, especially if you've been using PhpStorm for a long time. There are many small visual differences things that seem insignificant, but they do make a big difference. We recommend you spend some time in the Settings and configure the interface to something you're happy with.

Working tree file/folder indentation

Settings - Workbench > Tree: Indent (Controls indentation in the Workspace tree)

Increase the size of variables that you can peak at when using breakpoints

"xdebugSettings": {
    "max_children": 999,
    "max_depth": 10,
    "max_data": -1
}

It's better to learn VS Code's default key-bindings, however, some developers might prefer to maintain PHPStorm's key-bindings in VS Code, and for that, you can use

You can access a list of shortcuts for your operating system by going to Help - Keyboard Shortcuts Reference within your VS Code application, or

to read a general overview of PHP programming in VS Code with tips around linting and debugging.

PHP Intelephense
PHP Debug
Remote - SSH
Remote - Containers (Docker)
GitLens
Bookmarks
Docker
Vetur
IntelliJ IDEA Keybindings.
click here.
Click here