Build and Release Your App

When you finish writing your code, the next step is to deploy it. We offer different deployment options based on your role and needs as a customer, system integrator, or independent software vendor (ISV) partner.

To learn about the benefits of the different development models, review these Trailhead modules:

You have several tooling options, based on how you decide to build and release yours apps.

Customers and Non-ISV Partners

  • Code Builder – A web-based integrated development environment that has all the power and flexibility of Visual Studio Code, Salesforce Extensions for VS Code, and Salesforce CLI in your web browser.
  • Salesforce Extensions for VS Code – A set of extensions that come with rich tools for developing on the Salesforce platform.
  • Salesforce CLI – A command-line interface that simplifies development and build automation when working with your Salesforce org
  • Metadata API – An API for deploying, retrieving, creating, updatinge, or deleting customizations.
  • DevOps Center – Change and release management for declarative and pro-code developers.
  • Unlocked Packages – For customers who want to organize metadata into a package and deploy the metadata (via packages) to different orgs.

ISV Partners

  • Second-Generation Managed Packages

    If you’re an ISV that develops apps and lists them on AppExchange, Salesforce recommends managed packages.

    Second-generation managed packaging (managed 2GP) ushers in a new way for AppExchange partners to develop, distribute, and manage their apps and metadata. You can use managed 2GP to organize your source, build small modular packages, integrate with your version control system, and better utilize your custom Apex code. You can execute all packaging operations via Salesforce CLI, or automate them using scripts.

    For more information on managed 2GP packages, see the Second-Generation Managed Packaging Developer Guide.

  • First-Generation Managed Packages

    Similar to managed 2GP, managed 1GP packages are used by ISVs to distribute their business apps to customers via AppExchange.

    If you’re familiar with first-generation managed packages and want to learn more about how 1GP differs from 2GP, see Comparison of First- and Second-Generation Managed Packages.

    For more information on managed 1GP packages, see Create a First-Generation Managed Package using Salesforce DX.