An app for demonstrating functionality of the Percolate Developer Platform, written in Typescript using Express.
Defines a manifest and a Heroku app. The manifest defines both lifecycle callback and UI extension URLs, which are served by the Heroku app.
For a similar app written in Python, see Biscotti.
To create an application server running on your own machine instead of Heroku, use the following guide.
- Install dependencies:
npm install
- Run the app:
npm start
- Verify it's working by navigating to http://localhost:3000,
you should see the string
hi
- Install ngrok
- Expose the running local server publicly:
ngrok http 3000
- Change the URL domains in the manifest to use the URL displayed by the
ngrok
command. If you see the lineForwarding https://490d31a3.ngrok.io -> http://localhost:3000
, this means that theprclt-crostini.herokuapp.com
domains should be changed to490d31a3.ngrok.io
- Upload the modified app manifest in the "App registration" page
- Install the app in the "Manage apps" page
- Verify that your local app received callback request to
/install
in the server logs
- Stop the app if it is running
- Navigate to the app details by clicking on the app in the "App registration" page
- Click the "Show app secret" button to view the secret
- Start the app back up with the
APP_SECRET
environment variable set to the value shown, an example of this command:APP_SECRET=c12de0430670c1e251e0502aa3afb385374df5337bdd20b27b0e77fc702c9b1a \ npm start
- Navigate to a page with a UI component served by the app and verify that the JWT payload is properly decoded - you should see a JSON payload under the "decoded" header