Awesome Open Source
Awesome Open Source

Functions Recipes

CI Workflow codecov lerna

Functions Icon

Introduction

Salesforce Functions lets you use the Salesforce Platform for building event-driven, elastically scalable apps and experiences. Salesforce Functions is designed to boost developer productivity by reducing your infrastructure responsibilities and enabling you to build and integrate Functions-as-a-Service (FaaS) apps using the languages and tools of your choice.

Functions Recipes is a library of examples to help you getting started with Salesforce Functions and get used to their main features.

To learn more about Salesforce Functions please visit the documentation center.

Getting Started

You can use Functions both locally and deployed to a Salesforce Organization, if you don't have access to a Functions Enabled Org, you can still use the examples in this repository, please refer to the Local Development section for more information.

Prerequisites

Please refer to the Install Prerequisites for detailed information about the necessary tools to start developing Salesforce Functions.

Salesforce Org Setup and Deployment

For more information about how to configure your organization for Salesforce Functions, please refer to the documentation

Prerequisite: Functions Enabled Org

  1. If you haven't already done so, authorize with your org and provide it with an alias (fnrecipesorg in the command below):
sfdx auth:web:login -d -a fnrecipesorg
  1. Clone the functions-recipes repository:
git clone https://github.com/trailheadapps/functions-recipes
cd functions-recipes
  1. Create a scratch org and provide it with an alias (functions_recipes in the command below):
sfdx force:org:create -s -f config/project-scratch-def.json -a functions_recipes

Salesforce Functions Deployment

For more information about how to deploy Functions to a Compute Environment and connect it to an org, please refer to to the documentation

  1. Login to your Salesforce Functions account:
sf login functions
  1. Create a Compute Environment to deploy the functions and connected it to your org:
sf env create compute --connected-org=functions_recipes --alias=recipes_env
  1. Deploy the functions
sf deploy functions --connected-org=functions_recipes
  1. Push source app to the scratch org:
sfdx force:source:push -f
  1. Assign the FunctionsRecipes permission set to the default user:
sfdx force:user:permset:assign -n FunctionsRecipes
  1. Assign the Functions permission set to the default user:
sfdx force:user:permset:assign -n Functions
  1. Open the Functions Recipes App
sfdx force:org:open -p "/lightning/n/Functions"
  1. Activate the Functions Recipes Theme (Optional)
sfdx force:org:open -p "/lightning/setup/ThemingAndBranding/home"

Functions Recipes App

After deploying both the Salesforce app and the functions, you can open the Salesforce org and navigate to the Functions Recipes application:

From there you'll be able to explore the source code and invoke the deployed functions.

Screenshot

Local Development

Each individual function can be started and invoked locally using the Salesforce CLI, you can refer to each individual README for instructions on how to start and invoke each function locally.

Available Recipes

  1. Introduction to Functions
  2. InvocationEvent
  3. Context
  4. Logging
  5. Environment Variables

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Javascript (1,513,654
Functions (1,062
Salesforce (909
Related Projects