The Salesforce CLI is a command-line interface that simplifies development and build automation when working with your Salesforce org. There are numerous of commands that the sf cli provides natively that is beyond the scope of this site and can be found on the official Salesforce Documentation Site.
From a build, test, and deployment perspective, the following diagram depicts the bare minimum commands necessary to get up and running in setting up your sf project, retrieving and deploying code to the target environments.
sf cli deployments
sfp is based on the The Open CLI Framework for building a command line interface (CLI) in Node.js. Instead of being a typical Salesforce CLI plugin, sfp is standalone and leverages the same core libraries and APIs as the @salesforce/cli. sfp releases are independently managed and as core npm libraries are stable, we will update them as needed to ensure no breaking changes are introduced.
The diagram below depicts the basic flow of the development and test process, building artifacts, and deploying to target environments.
Once you have mastered the basic workflow, you can progress to publishing artifacts to a NPM Repository that will store immutable, versions of the metadata and code used to drive the release of your packages across Salesforce Environments.
sfp Develop, Test, and Release Workflow
The list below is a curated list of core sf cli and Salesforce DX developer guides for your reference.