First off, thanks for making the awesome app on VeChain and taking the time to contribute 💪
The following is a set of guidelines for contributing to AppHub. These are just guidelines, not rules. Use your best judgment and feel free to propose changes to this document in a pull request.
- The app must run on Mainnet
- Support Connex
- Logo is required
- The id must be unique
- Short and simple descriptions
- Comply with directory & contents rules
- One application per submission
To add your application, you need to create your app details and make a pull request for the maintainers to review your app and merge into AppHub.
Recommended workflow:
- Fork the AppHub
- Create a new branch
- Create your app details and upload to the proper directory
- Make the pull request
Ref:
- Fork a repo
- Clone a repo
- Creating a new branch
- Create a pull request
- Tutorial: How to make your first pull request on Github by Thanoshan MV
Once the AppHub is forked, create a new directory in the apps
directory with unique id and include a manifest.json
file and logo.png
file. To create a unique id, you can append the name of the application to the reversed domain such as com.example.your-app-name
. Your app directory structure should be look like this
├── apps
│ └── com.example.your-app-name
│ ├── logo.png
│ └── manifest.json
Create a manifest.json
file includes app details.
//manifest.json
{
"name": "your app name",
"href": "https://link-to-your-app",
"desc": "This is an awesome app",
"category": "utilities",
"tags": ["tools","development"],
"repo": "https://github.com/example/projectName",
"contracts": [
"0x1234567890123456789012345678901234567890",
"0x0987654321098765432109876543210987654321"
],
"isVeWorldSupported": false
}
name
is required.href
is required, and must be a fully-qualified URL.desc
is required.category
is required, and must be one of the provided category.tags
is required, should be an array if provided.isVeWorldSupported
is required, set this to true if your dApp supports the VeWorld browser extension, enabling its use within the VeWorld mobile wallet. Your dApp will then be listed in the dApp section of the VeWorld mobile discovery.repo
is optional, and must be a fully-qualified URL.contracts
is optional, should be an array and lower cases if provided- No fields should be left blank.
category
is required and must be one of the following values:
- collectibles
- defi
- games
- marketplaces
- utilities
Import your app logo into the directory and name it logo
.
A logo is a symbol made up of text and images that identifies an application.
- Must be a
.png
- Must be
512px by 512px
- Must not be a copy of another company's or application's logo
- Must not contain any marketing information (including but not limited to social media links/sale date)
- The pull request should have a clean git history.
- Don't use another company's trademarks (icon, logo or name) without supplying evidence of prior permission
- Create a directory under
/apps/
and contains the manifest.json and the logo.png - Keep description short and simple, but descriptive.
- Check your spelling and grammar.
- URL must have schemes of http or https.
- Logo complies with the logo rules
If the maintainers/reviewer notice anything that we'd like changed, we'll ask you to edit your PR before we merge it.
When users interact with your application, the function names and parameters are encoded as hex values in clause data field which is not very human-readable. You can submit the ABIs on b32 to help the user understand more about the interaction details.