
Learn to use the Salesforce CLI and SFDX for building applications, deploying metadata, querying data, and automating tasks with source driven development and GitHub.
Manish Choudhari shares practical insights on SFDX and Salesforce CLI, drawing from over five years building Salesforce apps with Aura and LWC to help learners master the platform.
Explore how Salesforce CLI authorizes orgs, manages data and metadata, and automates tasks, and contrast it with SFDX as a development approach using scratch orgs.
Learn to download and install the Salesforce CLI on Mac, Windows, and Linux; verify installation with sfdx --version and manage auto updates via environment variables like SFDX_DISABLE_AUTOUPDATE.
Explore the Salesforce CLI command structure, learn how to list commands, understand namespace, topic, and subtopic formats, and discover how to use help and options like -u and -v.
Explore a Salesforce sfdx project for a tree plantation app that tracks trees and locations, retrieves metadata, and builds a Lightning web component with Apex and tests to record plantations.
Learn to create an sfdx project, configure manifest with package.xml, and explore metadata retrieval and scratch org setup using the Salesforce CLI for deploying and downloading org metadata.
Authorize a Salesforce org in your SFDX project using web login flow, set an alias and default Dev Hub, and prepare to retrieve or deploy metadata.
Retrieve the content of package.xml using the mdapi topic, then convert the metadata to the source format for the sfdx project.
Learn to retrieve a package.xml with the force:source:retrieve command using the -x option and automatically convert it to source format within your sfdx project.
Learn to create a new lightning web component in a local sfdx project, integrate it into the app, and deploy changes to a dev org with scratch org workflow.
Deploy local sfdx changes to a Salesforce developer org using the source topic. Leverage on-the-fly conversion of source format and deploy lightning web components like the tree plantation form.
Delete a metadata component from a local sfdx project and Salesforce Org using the force source delete command with a source path, confirm the prompt, and verify removal.
Convert your source to the mdapi format with force source convert, then deploy the metadata folder via mdapi deploy to your Salesforce org, tracking with deploy report and job id.
Run Apex tests with the Salesforce CLI using Apex test run, exploring options like code coverage, output directory, test level, classnames, suites, tests, and result formats to improve org-wide coverage.
Create a test class for the tree location controller using the ApexUnitTest template, deploy tests with force source deploy, and achieve 100 percent org-wide code coverage.
Explore Salesforce data manipulation with the Salesforce CLI data commands, including bulk, record, soql, and tree operations; learn to run soql:query and fetch results in human, csv, or json formats.
Demonstrates creating, updating, and deleting Salesforce records via the Salesforce cli using sfdx force:data:record:create, update, and delete on Tree__c with fields like name and benefit__c.
Export data from tree, city, and tree plantation objects with the tree export command, saving as json, and use the plan parameter and soql queries to import parents before children.
Import Salesforce data with the sfdx force:data:tree:import command, using an import plan or json files, and insert tree, city, and tree plantation records with returned ids.
Learn to create and use scratch orgs with sfdx and Salesforce CLI, push metadata, upload data, test features, and redeploy to a dev hub or GitHub repo.
Clone a GitHub repo, authorize Dev Hub, create a scratch org, push local sfdx metadata to the scratch org, and assign permissions to access the app.
Upload sample data to the scratch org using force:data:tree:import with the import-plan.json, creating trees, cities, and tree plantations, and verify records in the org.
Create a new lightning web component named newTreePlantation in a scratch org, push changes with sfdx, and run tests to reach 100% org code coverage by adding TreeLocationController tests.
Explain source driven development and the deployment life cycle, using a source repository and branches dev, qa, uat, master to move metadata from scratch orgs to production.
Track changes between your local sfdx project and a scratch org using the sfdx force:source:status command, enabling source tracking, then push or pull updates to keep both in sync.
Demonstrates a source-driven development flow using sfdx and GitHub, with master as source of truth and separate dev and qa branches, plus creating a private branch and scratch org testing.
Clone the dev branch, create private branches for developers, push changes, test in a scratch org, ensure 100% code coverage, and merge via pull requests into the dev branch.
Learn how to merge two private branches into dev via pull requests, review changes, and deploy new tree plantation component and test class updates to QA, UAT, and production.
Move metadata from dev through qa and uat to master using pull requests and merges, with reviews, sandbox testing, and production alignment on the master branch.
Learn how to write automation scripts with Salesforce CLI to automate repetitive tasks, building on metadata handling, data upload, and data querying in scratch and non-scratch orgs.
Automate Salesforce cli authentication by generating a self signed certificate with OpenSSL and using it in a connected app for json web token flow, stored in assets.
Create a connected app in the Dev Hub, upload the certificate, configure OAuth settings and scopes, then authorize Salesforce CLI with the consumer key using web and JWT flows.
Automate Salesforce development tasks using the Salesforce CLI by writing a bash script that clones a repo, authorizes a Dev Hub, creates a scratch org, and pushes metadata.
Learn to automate Salesforce CLI tasks: authorize dev hub via JWT flow, create a scratch org, push metadata, assign a permission set, upload sample data, and open the scratch org.
Install VS Code and the Salesforce Extension Pack to accelerate sfdx development, leveraging code completion, command palette, deploy on save, and an integrated org browser for Salesforce projects.
Recap how Salesforce CLI works, covering mdapi vs source metadata, deploy and retrieve in scratch or non-scratch orgs, and a source-driven development workflow with GitHub and automation.
[This course is outdated and does not include latest Salesforce CLI features. I have discontinued the course as I do not have immediate updates planned for the course].
While Salesforce DX (SFDX) has been available for several years, the ecosystem is currently at a pivotal tipping point. Many organizations and developers are still navigating the transition from traditional, org-based development to the modern, Source-Driven Development model. This course is specifically engineered to bridge that knowledge gap, transforming the Salesforce CLI from a mysterious "black box" into your most powerful daily productivity tool.
Our curriculum begins by demystifying the core architecture of the Command Line Interface. We don’t just teach you which buttons to press; we help you understand the "why" behind the syntax, ensuring you can navigate any project requirement with confidence. You will progress through a hands-on journey, starting with fundamental metadata deployment and retrieval, before moving into the nuances of Source Format Metadata, which is the backbone of modern version control.
What You Will Learn
CLI Foundations: Understand the structural anatomy of a CLI command to troubleshoot and build scripts effectively.
Metadata Management: Master the transition between traditional Metadata API and the modern Source Format.
Data Operations: Go beyond the UI to query, upload, and manipulate Salesforce data directly from your terminal.
Source-Driven Strategy: Learn the end-to-end lifecycle of a project where the "Source of Truth" lives in Git, not the Org.
Environment Strategy: Explore the critical differences between Scratch Orgs and Non-Scratch Orgs (Sandboxes), and learn how to leverage each for maximum efficiency.
Advanced Automation: Scale your impact by learning how to automate repetitive tasks, paving the way for Continuous Integration and Continuous Deployment (CI/CD) pipelines.
Why Take This Course?
By the end of this program, you will have moved beyond the basics and into the realm of professional Salesforce engineering. Whether you are looking to modernize your current project or prepare for a role in an enterprise-level DevOps environment, this course provides the practical examples and architectural theory needed to thrive. You will exit with a complete understanding of the Source-Driven Development Lifecycle, ready to lead your team into the future of the Salesforce platform.