· Daniel Rodriguez · Personal · 3 min read
From Zero to Ready: Master Your Salesforce Dev Environment Fast
Skip the confusion! This guide shows you exactly how to configure your Salesforce dev environment so you can focus on building.

Recommended First Steps (Practical Approach)
- Install Salesforce DX CLI.
- Setup Visual Studio Code with Salesforce Extensions.
- Authenticate with a Developer org (
sf login web
). - Create your first scratch org and push simple metadata changes.
- Commit changes to Git and integrate your CI/C
1. Salesforce DX (Developer Experience) – CLI
Salesforce DX is Salesforce’s modern development CLI toolkit. It helps with project creation, deployments, managing scratch orgs, packaging, and testing.
Installation (All platforms):
- macOS (with Homebrew):
brew tap salesforce/sfdx
brew install sfdx
- Windows (using Chocolatey):
choco install sfdx-cli
- Linux (with npm):
npm install @salesforce/cli --global
Official docs: [Salesforce CLI Install](https://developer.salesforce.com/tools/sfdxcli
Common Salesforce CLI commands:
# Login to Salesforce org
sf login web
# Create new scratch org
sf org create scratch -f config/project-scratch-def.json -a MyScratchOrg -d 7
# Push source code to scratch org
sf project deploy start
# Run Apex tests
sf apex test run
# Open org
sf org open
2. IDE and Text Editors
Recommended IDE:
Visual Studio Code (All platforms, free, recommended by Salesforce) - Download VS Code Install these essential Salesforce extensions from VS Code Marketplace:
- Salesforce Extension Pack
- Apex PMD (Code Quality Analysis) (recommended for best practices enforcement)
3. Version Control (Git)
Version control is essential. Use Git and host your repositories on services like GitHub, GitLab, or Bitbucket.
Install Git:
macOS (Homebrew):
brew install git
Windows (Chocolatey):
choco install git
Linux (apt/yum):
sudo apt install git # Ubuntu/Debian
sudo yum install git # CentOS/RHEL
Typical Git-based workflow:
- Clone your Salesforce DX repository:
git clone https://github.com/your-repo.git
- Branching:
git checkout -b feature/new-component
- Commit changes:
git add .
git commit -m "Added new Lightning component"
git push origin feature/new-component
4. Package and Dependency Management
Salesforce DX supports modular app structure through packages:
- Unlocked Packages (recommended for AppExchange apps) - Allow modular, versioned deployments
- Improve maintainability, easier upgrades
Create unlocked packages with Salesforce CLI:
sf package create --name "MySalesforceApp" --path force-app --packagetype Unlocked
sf package version create --package "MySalesforceApp" --installationkeybypass --wait 10
5. Scratch Orgs
- Scratch orgs are temporary Salesforce environments used for dev/testing.
- Fast, disposable, and easy-to-use for developers.
Define scratch org:
Create a project-scratch-def.json
file:
{
"orgName": "MyScratchOrg",
"edition": "Developer",
"features": ["Communities", "LightningSalesConsole"],
"settings": {
"lightningExperienceSettings": { "enableS1DesktopEnabled": true }
}
}
Then use Salesforce CLI to create scratch org:
sf org create scratch -f project-scratch-def.json -a MyScratchOrg -d 7
6. Continuous Integration (CI/CD)
Common CI/CD providers for Salesforce DX automation (deployment, tests, package management):
- GitHub Actions (highly recommended, native integration)
- GitLab CI
- Bitbucket Pipelines
Example GitHub Actions Workflow (.github/workflows/deploy.yml
):
name: Deploy to Salesforce
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Salesforce CLI
run: |
npm install @salesforce/cli --global
sf --version
- name: Authenticate Salesforce
run: sf org login jwt --clientid ${{ secrets.CLIENT_ID }} --jwtkeyfile server.key --username ${{ secrets.SF_USERNAME }} --instanceurl https://login.salesforce.com
- name: Deploy to Org
- run: sf project deploy start
7. Additional Useful Tools & Extensions
Salesforce Inspector (Chrome/Firefox browser extension)
Great for real-time data inspection and debugging
Data Loader CLI
For bulk import/export data scenarios, Salesforce Data Loader(or the CLI variant) is useful.
Install Data Loader: [[Download and Install Data Loader]]
8. Salesforce Platform Tools and Web Resources
Salesforce Setup (Web Interface)
Trailhead (Learning & Documentation)
Summary of Modern Salesforce Development Toolchain
Component | Recommendation | macOS ✅ | Windows ✅ | Linux ✅ |
---|---|---|---|---|
CLI Tooling | Salesforce DX CLI | ✅ | ✅ | ✅ |
IDE/Text Editor | VS Code | ✅ | ✅ | ✅ |
Version Control | Git | ✅ | ✅ | ✅ |
Package Management | Salesforce DX Unlocked Packages | ✅ | ✅ | ✅ |
CI/CD | GitHub Actions, GitLab CI, Bitbucket Pipelines | ✅ | ✅ | ✅ |
Scratch Org Environment | Salesforce DX Scratch Orgs | ✅ | ✅ | ✅ |
Browser Tools | Salesforce Inspector | ✅ | ✅ | ✅ |
Data Tools | Salesforce Data Loader (CLI/GUI) | ✅ | ✅ | ✅ |