Documentation
Feedback
Guides
App Development

App Development
VTEX App StoreApp Store Guidelines
Documentation guidelines

Developing and publishing apps on the VTEX App Store requires meticulous documentation to ensure seamless adoption by developers and business users. Follow these best practices to create clear, engaging, and effective documentation for your VTEX apps.

Identifying your audience

Clearly distinguish between developers and business users when developing documentation. Developers will focus on installation, setup, and other configuration options, while business users need a streamlined understanding of app functionalities and operations.

Defining the documentation objectives

Envision what users should achieve after reading your documentation. Clearly outline the learning objectives, ensuring that users leave with a comprehensive understanding of your app's capabilities.

Structuring your documentation

Title

The title must be concise and memorable. Ensure that it describes the experiences the app represents.

Do’s

  • Use the app's name as the article title.

  • Clearly state the learning objective of the article, preferably with only one verb.

  • Capitalize the first letter of each word.

✅ Do❌ Don't
Availability SubscriberAvailability Subscribe
Search BarSearch bar

Don’ts

  • Do not use punctuation, such as periods, commas, exclamation points, question marks, semicolons, colons, and underscores.

  • Do not use the word App.

  • Do not include the version number of the app.

✅ Do❌ Don't
Google Tag ManagerGoogle Tag Manager v3.5.2.
Live ShoppingLive Shopping app

Introduction

The introduction should summarize your app’s purpose and what the user will learn with the documentation.

  • Write a short description of the app.
  • Emphasize the end-user benefits.
  • Add an image that illustrates the app behavior.
  • Use Callout for important notes.
✅ Do❌ Don't
The Availability Subscriber component shows the availability subscriber form displayed when a product is unavailable. This component can be imported and used by any VTEX App.The Availability Subscriber is a First-Party solution and can be imported and used by any VTEX App.

(Optional) Before you start

Before the app’s installation, the user may need to meet some prerequisites. For example, an account or permission in another platform, knowledge of specific web technology, or a development tool like the VTEX IO CLI.

  • Create bullets or checklists to describe the prerequisites.
  • Use Callout if applicable.
✅ Do❌ Don't
You need a Google account to use Google Tag Manager. You can use the same account if you already use Google products like Gmail. If you do not have an account for a Google product, create one at Creating your Google account.You need a Google account to use Google Tag Manager.

Installation

Offer a step-by-step installation guide, utilizing code snippets to enhance user comprehension.

Refer to the Installation section in the Documentation template for an example.

Configuration

After installation, guide users through configuring the app in their store's theme code or Admin settings. List all essential app settings with detailed step-by-step instructions.

Refer to the Configuration section in the Documentation template for an example.

(Optional) Customization

If applicable, provide steps for customizing the app. For example, if your app uses CSS handles, provide the CSS handles related to the app and add a table with the available CSS handles. Make sure to add the documentation link for the instructions to apply CSS customizations.

(Optional) Contributors

Follow the All-Contributors specification and recognize the people who contributed to your app.

Callout

If you need to highlight information, use one of the following callout types:

Information

Highlights an aspect the user should pay attention to, giving additional information about the subject. However, the lack of awareness of that information will not lead to problems.


_10
> ℹ️ Information goes here.

Warning

Applies when the user must pay attention to information to avoid issues or unexpected behaviors. It shows a medium criticality level that leads to problems.


_10
> ⚠️ Warning message goes here.

Danger

Represents the highest criticality level. If the user ignores the information given, this might lead to critical issues, possibly breaking the feature.


_10
> ⛔ Danger message goes here.

Documentation template

A basic documentation template structure with the previously described sections for you to start.

Documentation template

_59
# {Insert the app's name}
_59
_59
The `\{insert app's name\}` is responsible for `\{app's purpose\}` so you can `\{job to be done\}`.
_59
_59
![insert-an-image-preview](/)
_59
_59
## Before you start
_59
_59
You need to have `\{insert what the user needs to have: an account in another platform, CLI, knowledge in another app, etc\}`.
_59
_59
If you do not have `\{insert what the user needs to have and how it can be done\}`.
_59
_59
## Installation
_59
_59
1. [Install](https://developers.vtex.com/vtex-developer-docs/docs/vtex-io-documentation-installing-an-app) the `\{insert app's name\}` app in the desired VTEX account by running `vtex install \{appVendor\}.\{appName\}` in your terminal.
_59
2. Open your store’s Store Theme app directory in your code editor.
_59
3. Open your app's `manifest.json file` and add the `\{insert app's name\}` app under the `peerDependencies` field.
_59
_59
_59
"peerDependencies": {
_59
"vtex.{appName}": "{appVersion}"
_59
}
_59
_59
_59
4. Declare the `\{insert app's name\}` app in the desired template. For example:
_59
_59
"store.home": {
_59
"blocks": [
_59
+ "{app-name}",
_59
]
_59
},
_59
_59
*![insert-an-image-preview](/)*
_59
_59
## Configuration
_59
_59
Once you have installed the app, you can `\{describe the app's configuration in the VTEX Admin, for example\}`.
_59
_59
1. `first step`.
_59
2. `Second step`.
_59
3. `Third step`.
_59
_59
## Customization
_59
_59
To apply CSS customizations to this and other blocks, follow the instructions given in the recipe on [Using CSS Handles for store customization](https://developers.vtex.com/vtex-developer-docs/docs/vtex-io-documentation-using-css-handles-for-store-customization).
_59
_59
| CSS Handles |
_59
| ------------------ |
_59
| csshandlesName |
_59
| csshandlesName |
_59
| csshandlesName |
_59
_59
## Contributors
_59
_59
Thanks go to these wonderful people:
_59
_59
- `\{insert the GitHub username\}`
_59
_59
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind are welcome.

Contributors
2
Photo of the contributor
Photo of the contributor
+ 2 contributors
Was this helpful?
Yes
No
Suggest edits (Github)
Contributors
2
Photo of the contributor
Photo of the contributor
+ 2 contributors
On this page