The AppExchange Demo Kit (ADK) allows Salesforce Developers to build and share rich, dynamic demo orgs in a source-centric manner without requiring batch files or shell scripts!
Anyone who has installed the Salesforce CLI and the SFDX-Falcon Plugin can install any ADK Demo with three simple commands.
$ sfdx falcon:adk:clone https://github.com/VivekMChawla/adk-sample.git
$ cd adk-sample
$ sfdx falcon:adk:install
Want to try for yourself? These instructions will help you install the SFDX-Falcon CLI Plugin, clone an AppExchange Demo Kit (ADK) starter project, and distribute your first ADK project to others.
Before getting started, make your Salesforce, GitHub, and Local environments meet these prerequisites.
Once your environments meet all the prerequisites, following the rest of this guide should only take about 10 minutes.
The AppExchange Demo Kit (ADK) is installed as part of SFDX-Falcon, a plugin for the Salesforce CLI. Once you've completed the prerequisites from Step One, open a terminal (command prompt) and enter the following:
$ sfdx plugins:install sfdx-falcon
You should see something similar to this:
Important Notes:
- The command
sfdx plugins:install
pulls the plugin source code directly from the sfdx-falcon package, hosted by NPM - The SFDX-Falcon Plugin has not been digitially signed (yet), so you will need to acknowledge the warning to continue the installation
Create a directory for your AppExchange Demo Kit (ADK) projects and change into the new directory.
$ cd ~
$ mkdir ADK-Projects
$ cd ADK-Projects
You should see something similar to this:
Demos built with the AppExchange Demo Kit (ADK) are distributed via GitHub, so the first step when creating a new ADK project is creating a new, empty, public repository on GitHub.
Important Notes:
- Go to https://github.com/new
- Must be logged into GitHub first
- Choose a name for your ADK project
- Only letters, numbers, hyphens, and underscores are allowed
- Using all lowercase letters is strongly recommended
- Add a description for your ADK project
- Choose "Public" so your demo can be distributed to others
- Make sure that you do not initialize the repository with a README, add .gitignore, or add a license. The SFDX-Falcon plugin will create these for you.
- Click "Create Repository".
Important Notes:
- Click the "HTTPS" button
- IMPORTANT: The ADK Setup Wizard does not support Git Remote URIs that use the SSH protocol, so you must copy the HTTPS version of your Git Remote URI
- The URL shown here is the Git Remote URI for your new repository
- Click the "copy to clipboard" button to automatically copy the Git Remote URI to your clipboard
Start the AppExchange Demo Kit project setup wizard by executing falcon:adk:create
from the command line.
$ sfdx falcon:adk:create
You should see something similar to this:
Important Notes:
- Run
sfdx falcon:adk:create
from the command line - The SFDX-Falcon plugin will take 1-2 minutes to initialize the AppExchange Demo Kit project wizard
- Answer the questions presented to you by the wizard
- IMPORTANT: For the question "What is the URI of your Git Remote?", paste the https URL you copied from GitHub in Step Three.
- Review the information you provided to the wizard
- Confirm that you want to create a new ADK project using these settings
Change into the ADK project directory you just created, then run sfdx falcon:adk:install
. Do so by entering the following:
$ cd uc-demo-app
$ sfdx falcon:adk:install
If you supplied a valid Git Remote URI during project creation, then your local repository already has a remote it can push to (origin).
$ git push origin master
To see what others experience when consuming your demo, try the following:
$ cd ..
$ sfdx falcon:adk:clone https://github.com/MyGitHubUser/my-demo.git test-drive
After entering the above, you will go through a breif interview to determien local settings for the project you're about to clone. Once this process is complete, enter the following:
$ cd test-drive
$ sfdx falcon:adk:install
To see the demo that you installed, open the org using the following:
$ sfdx force:org:open
To report bugs or request new features, create an issue for the SFDX-Falcon CLI Plugin which powers the AppExchange Demo Kit (ADK) and AppExchange Package Kit (APK).
Additional help is available to Salesforce ISV Partners by visiting the SFDX-Falcon Chatter Group in the Partner Community and posting questions there.
SFDX-Falcon, the SFDX-Falcon Plugin, and the AppExchange Demo Kit were created by Vivek M. Chawla LinkedIn | Twitter.
SFDX-Falcon and the AppExchange Demo Kit (ADK) are made available under the MIT License - see the LICENSE file for details.