Skip to content

Commit 44f08b0

Browse files
authored
Merge pull request AdobeDocs#393 from kuflower/CEXT-4720-clarify-submission-guide
CEXT-4720: clarify Must-Do items in app submission guide
2 parents 5d13ac2 + 5c1d45d commit 44f08b0

File tree

3 files changed

+33
-49
lines changed

3 files changed

+33
-49
lines changed

src/pages/app-development/app-submission-guidelines.md

Lines changed: 26 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ The following requirements must be met for your app to be accepted. If your app
4545
- **Developer documentation**: Include links to relevant Adobe developer documentation (example: App Builder [getting started guide](https://developer.adobe.com/app-builder/docs/get_started/)).
4646
- **Environment setup**: Provide a `.env.dist` file with all required environment variables, clearly labeled with guidance.
4747
- **PaaS support**: Documentation must include installation steps for PaaS merchants. This means if you are submitting an app for Adobe Commerce as a Cloud Service (SaaS), you also need to support Adobe Commerce on cloud infrastructure (PaaS) and Adobe Commerce on-premises (on-prem).
48+
- **Action scoping**: All runtime actions must be scoped and documented, if they are exposed as webhooks.
4849

4950
- Security awareness
5051
- **Screenshot security**: Ensure no screenshots contain access tokens, secrets, or API keys.
@@ -83,10 +84,18 @@ The following requirements must be met for your app to be accepted. If your app
8384
### Project structure
8485

8586
- Configuration files
86-
- **Environment variables**: Provide a clear `.env.dist` file containing all needed keys. Remove any unused keys.
87-
- **YAML configuration**: Review `deploy.yaml` and `app.config.yaml` for accurate app IDs, event configs, and scopes.
88-
- **Commerce product**: Define `commerce` as a required product in `app.config.yaml`. See [required products](https://developer.adobe.com/commerce/extensibility/app-development/required-products/) for more information.
87+
- **Environment variables**: Provide a clear `.env.dist` file containing all needed keys used by YAML files. Remove any unused keys.
8988
- **Package metadata**: Ensure `package.json` is updated with an app-specific `name`, `version`, and `author`.
89+
- **YAML configuration**: Review `deploy.yaml` and `app.config.yaml` for accurate app IDs, event configs, and scopes.
90+
- **Commerce product**: Define `commerce` as a required product in `app.config.yaml`. See [required products](https://developer.adobe.com/app-builder/docs/guides/app_builder_guides/distribution#required-products) for more information.
91+
92+
```yaml
93+
productDependencies:
94+
- code: COMMC
95+
minVersion: 2.4.5
96+
```
97+
98+
- **Events configuration**: Review [`events.config.yaml`](/starter-kit/checkout/configure/#eventsconfigyaml) to verify event providers and registrations, document usage, and prefix events with your app's scope to avoid collisions. Remove this file if your app does not use events.
9099

91100
- Project cleanup
92101
- **Unused folders**: Remove any unused or unnecessary folders.
@@ -101,27 +110,17 @@ The following requirements must be met for your app to be accepted. If your app
101110

102111
- Commerce compatibility
103112
- **Multi-flavor support**: Ensure compatibility between commerce flavors (PaaS & SaaS):
104-
- &#8203;<Edition name="saas" /> IMS Auth instead of OAuth1
105-
- &#8203;<Edition name="saas" /> Base URL with tenantId and without "rest"
106-
- **Action scoping**: All runtime actions must be scoped and documented, if they are exposed as webhooks.
107-
108-
### Dependencies
113+
- &#8203;<Edition name="saas" /> Use [IMS](/starter-kit/checkout/connect/#adobe-identity-management-service-ims) for authentication instead of [Commerce integrations (OAuth1)](/starter-kit/checkout/connect/#create-a-commerce-integration).
114+
- &#8203;<Edition name="saas" /> Configure [the Commerce Base URL](/starter-kit/checkout/connect/) to include tenantId without `/rest`.
109115

110-
- Dependency management
111-
- **Unused dependencies**: Remove any unused dependencies reported by `npx npm-check`.
112-
- **Direct dependencies**: Ensure all direct dependencies are declared in `package.json`.
113-
- **Version updates**: Update major versions of critical packages.
114-
115-
### Cleanup and quality assurance
116-
117-
- Code cleanup
116+
- Quality assurance
118117
- **Test suite**: Ensure tests all tests are passing. Run `npm test` to validate.
119118

120-
### Configuration
119+
### Dependency management
121120

122-
- Configuration best practices
123-
- **Input validation**: Ensure that all inputs in YAML files are defined as variables in the `.env.dist` file.
124-
- **Commerce product**: Define `commerce` as a required product in `app.config.yaml`. See [required products](https://developer.adobe.com/commerce/extensibility/app-development/required-products/) for more information.
121+
- Version management
122+
- **Direct dependencies**: Check for missing dependencies using `npx npm-check` (`PKG ERR` label).
123+
- **SDK migration**: Fully migrate Admin UI SDK 1.x extension points to 3.x if applicable.
125124

126125
## Best practices
127126

@@ -162,36 +161,24 @@ In cases where it is not possible to provide test credentials or a demo environm
162161

163162
**Option 2**: Submit a recorded video demonstrating the app's functionality to the Adobe review team
164163

165-
### Cleanup and quality assurance
164+
### Code review
166165

167166
- Code cleanup
168167
- **Development artifacts**: Remove `TODO` comments and unused scripts or handlers.
169168
- **Test scripts**: Add or remove test scripts in `package.json` based on actual test coverage.
170169
- **Development logs**: Remove unused development logs and console outputs.
171-
172-
### Code review
170+
- **Handler cleanup**: Clean up any unused handlers or unused code, such as empty `preProcess` or `transformData` functions.
173171

174172
- Code quality
175-
- **Unused imports**: Remove any unused `imports` and validate with `npx npm-check`.
176173
- **Action consistency**: Ensure consistency and correctness in action names and routes.
177-
- **SDK migration**: Fully migrate Admin UI SDK 1.x extension points to 3.x if applicable.
178-
- **Hardcoded values**: Look for hardcoded values that should be configurable
179174
- **Duplicated logic**: Avoid duplicating SDK logic unnecessarily, such as OAuth or fetch wrappers.
180-
- **Action scoping**: All runtime actions must be scoped and documented, if they are exposed as webhooks.
181175

182-
### Dependencies and maintenance
176+
- Configuration best practices
177+
- **Package-level inputs**: Use package-level inputs in YAML files instead of repeating environment variables.
178+
- **Environment variables**: Avoid structured data in environment variables, unless necessary.
179+
180+
### Dependency management
183181

184182
- Version management
185183
- **Package updates**: Check for up-to-date package versions using `npx npm-check` (`MAJOR UP` label).
186184
- **Unused dependency check**: Check for unused dependencies using `npx npm-check` (`NOTUSED?` label).
187-
188-
- Code optimization
189-
- **Handler cleanup**: Clean up any unused handlers or unused code, such as empty `preProcess` or `transformData` functions.
190-
- **Development cleanup**: Remove any unused logs that were during development.
191-
- **SDK logic**: Avoid duplicating SDK logic unnecessarily, such as OAuth or fetch wrappers.
192-
193-
### Configuration
194-
195-
- Configuration best practices
196-
- **Package-level inputs**: Use package-level inputs in YAML files instead of repeating environment variables.
197-
- **Environment variables**: Avoid structured data in environment variables, unless necessary.

src/pages/starter-kit/checkout/connect.md

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,17 +14,15 @@ The [`adobe-commerce.js`](https://github.com/adobe/commerce-checkout-starter-kit
1414

1515
To use the Adobe Commerce HTTP Client, update the `COMMERCE_BASE_URL` value in the `.env` file, and complete the authentication setup.
1616

17-
- Commerce Admin REST endpoints:
17+
- &#8203;<Edition name="paas" />For PaaS (On-Premise/Cloud):
1818

19-
&#8203;<Edition name="paas" /> `COMMERCE_BASE_URL=https://<commerce_instance_url>/rest/<store_view_code>/`
19+
- `COMMERCE_BASE_URL` includes your base site URL + `/rest/<store_view_code>/`
20+
- Example: `https://<commerce_instance_url>/rest/<store_view_code>/`
2021

21-
- Adobe Commerce Cloud as a Service:
22+
- &#8203;<Edition name="saas" />For SaaS (Adobe Commerce as a Cloud Service):
2223

23-
&#8203;<Edition name="saas" /> `COMMERCE_BASE_URL=https://na1.api.commerce.adobe.com/<tenant_code>/`
24-
25-
<InlineAlert variant="info" slots="text"/>
26-
27-
The `COMMERCE_BASE_URL` must include the final slash '/'.
24+
- `COMMERCE_BASE_URL` must be the REST API endpoint provided by Adobe Commerce
25+
- Example: `https://na1.api.commerce.adobe.com/<tenant_id>/`
2826

2927
## Authentication
3028

src/pages/starter-kit/checkout/index.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ Refer to the [Getting Started](./getting-started.md) page to learn how to set up
1717
For more information on other technologies relevant to this project, see the following resources:
1818

1919
- Adobe Developer Console [documentation](https://developer.adobe.com/developer-console/docs/guides/)
20-
- App Builder [documentation](https://developer.adobe.com/app-builder/docs/overview)
21-
- Adobe I/O Runtime [documentation](https://developer.adobe.com/runtime/docs)
20+
- App Builder [documentation](https://developer.adobe.com/app-builder/docs/intro_and_overview/)
2221
- Adobe I/O Events [documentation](https://developer.adobe.com/events/docs)
2322
- Adobe Commerce extensibility [documentation](https://developer.adobe.com/commerce/extensibility)

0 commit comments

Comments
 (0)