Generate Required Files
The information here applies only for Showpad Apps v1 (deprecated). While your existing v1 Showpad Apps will continue to work, we strongly recommend:
- Creating new apps with Showpad Apps v2
- Migrating your v1 apps to v2
The remaining required files are generated by running the
Experience App CLI init
command:
- npm
- yarn
npx experience-app-cli init --src public
yarn experience-app-cli init --src public
Version 3.1.x
The init
command only initializes the required files. It does not set the
Showpad access credentials. You must use the
auth
command to
set these.
The remaining fields (identifier
, name
, version
, description
and
author
) should be confirmed without any edits. The default values suggested
for these fields are taken from the package.json
file.
If you open the public
folder now you'll see two files (described in the
following sections) have been added:
An .env
file is not created in version 3.x. Instead, a credentials file is
created in a hidden .showpad
directory.
Showpad Apps can not have duplicate source
files (manifest.json
,
config.json
, index.html
) in your project.
When using a build
tool, you should delete the directory built after bundling or use lib
or
dist
as build directories since the Experience App CLI will ignore these
directories.
config.json
This file contains the configuration settings which the Showpad administrator can change in the Online Platform. After you've created the structure of your app, this file will define the content you want available in your app (e.g., assets, labels, tags, etc.).
Your config.json
file should follow this structure:
Key | Description |
---|---|
version | The version of the configuration structure. Currently at version 1. |
labels | Everything related to text and copy. |
contents | An object containing all of the links to Showpad content:
|
We'll get into more detail about this file when you define your content.
Example
{
"version": 1,
"labels": {
"homepage": {
"title": "Your own Experience",
"subtitle": "How to get started with your own Experiences."
},
"slide1": {
"title": { "value": "Getting Started", "description": "Title for the first slide"},
"contents": "This Experience thing is going to be YUUGE"
}
...
},
"contents": {
"slide1": {
"presentation": { "type" : "asset", "value" : "d5d7736f4ecf8106f0be8ba35d11a2c4" }
}
...
}
}
manifest.json
The file contains all publicly available information about your app.
Example
{
"identifier": "com.showpad.showtime.demo",
"name": "Showtime Demo",
"version": "1.0.0",
"description": "A demo Experience for Showtime",
"author": "Showpad"
}
Version 3.x
The init
command only initializes the required files. It does not set the
Showpad access credentials. You must use the
auth
command to
set these.
The remaining fields (identifier
, name
, version
, description
and
author
) should be confirmed without any edits. The default values suggested
for these fields are taken from the package.json
file.
If you open the public
folder now you'll see two files (described in the
following sections) have been added:
An .env
file is not created in version 3.x. Instead, a credentials file is
created in a hidden .showpad
directory.
Showpad Apps can not have duplicate source
files (manifest.json
,
config.json
, index.html
) in your project.
When using a build
tool, you should delete the directory built after bundling or use lib
or
dist
as build directories since the Experience App CLI will ignore these
directories.
config.json
This file contains the configuration settings which the Showpad administrator can change in the Online Platform. After you've created the structure of your app, this file will define the content you want available in your app (e.g., assets, labels, tags, etc.).
Your config.json
file should follow this structure:
Key | Description |
---|---|
version | The version of the configuration structure. Currently at version 1. |
labels | Everything related to text and copy. |
contents | An object containing all of the links to Showpad content:
|
We'll get into more detail about this file when you define your content.
Example
{
"version": 1,
"labels": {
"homepage": {
"title": "Your own Experience",
"subtitle": "How to get started with your own Experiences."
},
"slide1": {
"title": { "value": "Getting Started", "description": "Title for the first slide"},
"contents": "This Experience thing is going to be YUUGE"
}
...
},
"contents": {
"slide1": {
"presentation": { "type" : "asset", "value" : "d5d7736f4ecf8106f0be8ba35d11a2c4" }
}
...
}
}
manifest.json
The file contains all publicly available information about your app.
Example
{
"identifier": "com.showpad.showtime.demo",
"name": "Showtime Demo",
"version": "1.0.0",
"description": "A demo Experience for Showtime",
"author": "Showpad"
}
Version 2.x
The Experience App CLI will prompt you for the following information:
Host | The URL of your Showpad instance. If you copy/paste the URL, be sure to remove the trailing "/". Example: https://yourdomain.showpad.biz |
OAuth Client Id | Your OAuth Client ID from from Showpad's Online Platform. |
OAuth Client Secret | Your OAuth Client Secret from Showpad's Online Platform. |
Showpad Username | The email address used to log into Showpad. |
Showpad Password | The password used to log into Showpad. |
The remaining fields (identifier
, name
, version
, description
and
author
) should be confirmed without any edits. The default values suggested
for these fields are taken from the package.json
file.
If you open the public
folder now you'll see two files (described in the
following sections) have been added:
You'll also see an .env
file has been created in the root folder.
Showpad Apps can not have duplicate source
files (manifest.json
,
config.json
, index.html
) in your project.
When using a build
tool, you should delete the directory built after bundling or use lib
or
dist
as build directories since the Experience App CLI will ignore these
directories.
config.json
This file contains the configuration settings which the Showpad administrator can change in the Online Platform. After you've created the structure of your app, this file will define the content you want available in your app (e.g., assets, labels, tags, etc.).
Your config.json
file should follow this structure:
Key | Description |
---|---|
version | The version of the configuration structure. Currently at version 1. |
labels | Everything related to text and copy. |
contents | An object containing all of the links to Showpad content:
|
We'll get into more detail about this file when you define your content.
Example
{
"version": 1,
"labels": {
"homepage": {
"title": "Your own Experience",
"subtitle": "How to get started with your own Experiences."
},
"slide1": {
"title": { "value": "Getting Started", "description": "Title for the first slide"},
"contents": "This Experience thing is going to be YUUGE"
}
...
},
"contents": {
"slide1": {
"presentation": { "type" : "asset", "value" : "d5d7736f4ecf8106f0be8ba35d11a2c4" }
}
...
}
}
manifest.json
The file contains all publicly available information about your app.
Example
{
"identifier": "com.showpad.showtime.demo",
"name": "Showtime Demo",
"version": "1.0.0",
"description": "A demo Experience for Showtime",
"author": "Showpad"
}
.env
file
This file is also created by the init
command. It contains information that
should be protected like the client secret and admin password in addition to
some other fields. This file is ignored by .gitignore
so if you ever check
this app into version control your secrets are safe.