Add help page for making better package pages

This commit is contained in:
rubenwardy 2024-03-31 04:00:18 +01:00
parent f0a33927bd
commit eaea6ce9a3
4 changed files with 83 additions and 0 deletions

@ -27,6 +27,8 @@ toc: False
* [Creating Releases using Webhooks](release_webhooks/) * [Creating Releases using Webhooks](release_webhooks/)
* [Package Configuration and Releases Guide](package_config/) * [Package Configuration and Releases Guide](package_config/)
* [Supported Games](game_support/) * [Supported Games](game_support/)
* [Creating an appealing ContentDB page](appealing_page/)
## Help for Specific User Ranks ## Help for Specific User Ranks

@ -0,0 +1,74 @@
title: Creating an appealing ContentDB page
## Title and short description
Make sure that your package's title is unique, short, and descriptive.
Expand on the title with the short description. You have a limited number
of characters, use them wisely!
```ini
# Bad, we know this is a mod for Minetest. Doesn't give much information other than "food"
description = The food mod for Minetest
# Much better, says what is actually in this mod!
description = Adds soup, cakes, bakes and juices
```
## Thumbnail
A good thumbnail goes a long way to making a package more appealing. It's one of the few things
a user sees before clicking on your package. Make sure it's possible to tell what a
thumbnail is when it's small.
For a preview of what your package will look like inside Minetest, see
Edit Package > Screenshots.
## Screenshots
Upload a good selection of screenshots that show what is possible with your packages.
You may wish to focus on a different key feature in each of your screenshots.
A lot of users won't bother reading text, and will just look at screenshots.
## Long description
The target audience of your package page is end users.
The long description should explain what your package is about,
why the user should choose it, and how to use it if they download it.
[NodeCore](https://content.minetest.net/packages/Warr1024/nodecore/) is a good
example of what to do. For inspiration, you might want to look at how games on
Steam write their descriptions.
Your long description might contain:
* What does the package contain/have? ie: list of high-level features.
* What makes it special? Why should users choose this over another package?
* How can you use it?
The following are redundant and should probably not be included:
* A heading with the title of the package
* The short description
* Links to a Git repository, the forum topic, the package's ContentDB page (ContentDB has fields for this)
* License (unless you need to give more information than ContentDB's license fields)
* API reference (unless your mod is a library only)
* Development instructions for your package (this should be in the repo's README)
* Screenshots that are already uploaded (unless you want to embed a recipe image in a specific place)
* Note: you should avoid images in the long description as they won't be visible inside Minetest,
when support for showing the long description is added.
## Localize / Translate your package
According to Google Play, 64% of Minetest Android users don't have English as their main language.
Adding translation support to your package increases accessibility. Using content translation, you
can also translate your ContentDB page. See Edit Package > Translation for more information.
<p>
<a class="btn btn-primary me-2" href="https://rubenwardy.com/minetest_modding_book/en/quality/translations.html">
{{ _("Translation - Minetest Modding Book") }}
</a>
<a class="btn btn-primary" href="https://api.minetest.net/translations/#translating-content-meta">
{{ _("Translating content meta - lua_api.md") }}
</a>
</p>

@ -58,6 +58,10 @@ for a guide to making mods and games using Minetest.
See [Installing content](/help/installing/). See [Installing content](/help/installing/).
### How can my package get more downloads?
See [Creating an appealing ContentDB page](/help/appealing_page/).
## How do I get help? ## How do I get help?

@ -84,6 +84,9 @@
{{ render_field(form.media_license, class_="col-sm-6", hint=_("If there is no media, set the Media License to the same as the License.")) }} {{ render_field(form.media_license, class_="col-sm-6", hint=_("If there is no media, set the Media License to the same as the License.")) }}
</div> </div>
{{ render_field(form.desc, class_="pkg_meta", fieldclass="form-control markdown") }} {{ render_field(form.desc, class_="pkg_meta", fieldclass="form-control markdown") }}
<p class="pkg_meta form-text text-muted">
<a href="/help/appealing_page/">{{ _("What to write in the long description") }}</a>
</p>
</fieldset> </fieldset>
<fieldset class="mt-4 mb-5"> <fieldset class="mt-4 mb-5">