First Look on Code Builder
Today, I will take a look at a new integrated development environment from Salesforce. Code Builder is meant to be a web-based IDE that has almost the same experience as the desktop version of Visual Studio Code. It should allow anyone, anywhere, to get access to a fully featured development environment allowing programming for the Salesforce platform.
Salesforce is promising us to deliver a fully featured IDE for Salesforce platform development that will require only a browser window. Salesforce is using AWS services to deliver Code Builder, it is currently in Open Beta and everyone can access it, more on it later. After installation, we can spin our Code Builder environment just in a few minutes.
Code Builder should come prepacked with full Salesforce Extension pack, version control system integration, support for Apex and LWC, and other Salesforce platform-specific tools such as SOQL Builder, multi-org support or Apex tests integration.
If all what is promised is delivered, that means we will be able to log in from any browser capable device to continue working on our projects from any place with internet in the world.
Code Builder is in Open Beta, access is limited to 20h and up to 30 days, to install it, follow the instructions from this link. So, for now, it looks like we have only the option to quickly check the solution.
How to get started?
Code Builder is delivered as a managed package, you have to simply add it to your instance and launch it from the attached Lightning App. I recommend creating a new sandbox for the preview. Click a link to go to AppExchange. After the package is installed, you can go to the Code Builder app:
Then from the app itself you can create a new project or launch an existing one. Code Builder comes in a bundle with the Salesforce Extension pack, so for most use cases it should be ready to go!
Be prepared to wait a bit before launching the Code Builder itself, if everything goes according to plan, you should see the following animation:
After Code Builder finally launches, you will be greeted with a quite familiar view:
Firstly, usually, I use one of my accounts to synchronize customizations in VS Code. Currently, it is not supported (at leas it didn't work for me), but at least we can change the color theme, so there is that.
Most look and feel is just the same as on the desktop version of VS Code. We can use the command palette, change settings, and don't have to worry about Java version. Basic features like code completion, org connection, metadata management work without any problems. Also, Salesforce-specific tools like SOQL Builder or Testing are simply the same as on normal VS Code.
What surprised me a bit is that Code Builder comes integrated with a version control system. I know that it is already available in a desktop version, but normally the instance is independent of the repository itself. Now every Salesforce developer will have Git on the hand. I was able to easily clone SOQL Lib repository, move apex to the classes folder and deploy changes. Then I was able to add a commit message and push it to the repository, great!
Performance is smooth, and I could navigate, deploy, modify, stage and more without any hick-ups, unfortunately, I'm unable to verify it on the project with a lot of metadata. As expected, code completion works without a problem, for both custom and built-in code:
Everything looks just as it is intended to, without any lag, and what is more important—without any set up! This means even less technical people can start using it to do simple tasks, like committing metadata to a repository.
As it comes with new products, there were also some problems. I have only encountered three of them:
— after the first launch of Code Builder, I wasn't able to deploy code to the org because SFDX didn't detect a project, even if Code Blocks created one before launch. After creating a new one, everything started to work just fine.
— The other issue was the default username. When using the command dialog, SFDX runs commands with the use of default username, of course, it doesn't set by default. It is a small issue that should be quickly patched.
— Another concern is Extensions, currently not everything is being supported, which is a bit disappointing.
What in the future?
All in all, Code Builder looks very promising. Will I use it when it becomes broadly available? I don't think so, but I'm not a target audience of this tool. It enables most of the devices to become fully capable machine for Salesforce platform development. Moreover, it enables anyone who has access to Set up on Salesforce instance to start a new environment just in few seconds. It means that your admin who had problems with setting all of this: CLI's, installing IDEs, verifying correct Java version, setting Git in console and so on, will be able to simply click “LAUNCH” and prepare small commits without the hassle of setting entire environment.
Are you excited about Code Builder? Please let me know in the comments! Thank you for reading and see you in the future!