When publishing a Vultr Marketplace App, the Readme and App Instructions are the first thing many customers see when browsing your app. It's essential to format these two Markdown documents properly for a good first impression.
This guide has tips and examples of Markdown formatting to assist you when publishing your app.
You'll find the Readme editor on the General tab in the Marketplace. Customers see the Readme on your app's landing page. It should contain general marketing information about your application.
The App Instructions tab in the Marketplace is where you edit the instructions a customer needs after they deploy your app, including any application variables you've defined.
We have short examples of each further on in this guide.
Headings make your instructions easier to digest by separating logical sections. We suggest starting with
Heading level 2, which looks like this:
## This is a Second-Level Heading
Heading 3 uses three hash marks as shown:
### This is Heading Three
Vultr supports heading levels 2 through 6.
You can upload images and screenshots with copy-paste, drag-and-drop, or by clicking Insert Image in the toolbar.
![Insert image in toolbar](https://docs.vultr.com/public/doc-assets/917/d2441f17b837b7d0_compressed.webp)
Bullet points are helpful when there are three or more items that do not have any particular order. Use asterisks to make bullet points. Example:
* Item
* Item
* Item
When rendered, you'll see:
Numbered lists are helpful when the customer must take steps in sequence. Use 1. to create numbered lists. Example:
1. The First step.
1. The Second step.
1. The Third step.
When rendered, you'll see:
You could also number your steps in Markdown as 1. 2. 3.
, but it's more convenient to use 1. 1. 1
. if you need to insert items or reorder the list later. Markdown will handle the numbering in the output automatically for you.
Use the variables to make your App Instructions easier for customers. You can read more about App Variables here.
You could replace instructions like this:
When your app has finished deploying, type the IP address in your browser address bar.
...with a direct link including the IP address variable:
When your app has finished deploying, [click here to get started](https://{{ip}}/).
Consider including tables as appropriate. If your app has two versions and you need a feature comparison chart, you could write it like this:
| Feature | Open Source | Professional |
|-------------|-------------|--------------|
| Feature 1 | Yes | Yes |
| Feature 2 | Yes | Yes |
| Feature 3 | No | Yes |
| Feature 4 | No | Yes |
When rendered, the table looks like this:
Feature | Open Source | Professional |
---|---|---|
Feature 1 | Yes | Yes |
Feature 2 | Yes | Yes |
Feature 3 | No | Yes |
Feature 4 | No | Yes |
Use backticks to show inline code. Anything in backticks is escaped from Markdown formatting. See our note about escaping App variables here.
This is `inline code`.
Result:
This is inline code
.
Here's an example Readme to use as a starting template.
## About MyApp
MyApp is a groundbreaking app that does something special. As soon as you click deploy, the Vultr cloud orchestration takes over and spins up your instance in your desired data center.
### Point-and-Click Management
MyApp has a user-friendly management interface where you can manage:
* Email accounts
* Databases
* Security settings
* Passwords
Here's an example screenshot:
![Example screenshot](https://docs.vultr.com/public/doc-assets/917/d2441f17b837b7d0.png)
[Learn more about MyApp](https://www.example.com/about/myapp).
Assuming your application defines the variables web_pass and db_pass, your instructions might look like this:
# Example Application
Your application is ready!
* Your server's IP address is: {{ip}}.
* The root password is: `{{root_password}}`.
Connect to your web server at [**https://{{ip}}/**](https://{{ip}}/).
* Your webserver username is: **demo**.
* Your webserver password is: `{{web_pass}}`.
The MySQL root password is: `{{db_pass}}`.
Learn more in the Vultr Marketplace Application Instructions guide.