Documentation/HowTo/submit an extension
You need to have an account in TDF's single-sign-on system to upload your extensions. You can create an account at https://user.documentfoundation.org and can then login to https://extensions.libreoffice.org/admin.
After logging in
When logged in you can see the backend interface, that for regular users just focuses on the personal list of extensions. At first login that list of course is empty.
Claiming maintainership of an existing extension
If you're the author/uploader of an extension that was imported from the old Plone-based instance of the extensions site, please don't duplicate the entry, but rather claim ownership via a mail to hostmasterdocumentfoundation.org and the imported entry can be transferred to your account.
Creating a new entry
In order to create a new entry, hit the big green button labeled "Add Extension" and the dialog to enter the title, description, etc will load:
Fields like the project logo or the list of screenshots are optional, but having a visual clue representing your project/extension of course helps to make it out in search results/overview pages.
You should pick a few suitable tags that will make it possible to find your entry if one doesn't know its name and can also provide URLs to your homepage and/or source repository.
Before you can add files for download, you have to save the Extension's entry first - do that by hitting the "create" button.
Once saved, you can proceed to either translate the entry (see further down) or to add actual releases/files for download.
Scroll down on the entry and you'll now have a section listing the releases added/a button to add new ones:
Hitting the "Add Extension Release" button loads the form to add information about your release. The form works in the same way - you add your text into the fields and then you hit the "Create" button to add it.
To add more files to an extension, just repeat the process.
Translating your extension entries
You can translate extension entries, make sure to save in the default language (English) first. then switch to another language using the dropdown on the left and you'll get basically the same form, just now in the different language realm. You might have noticed the "EN" on green background in the previous screenshots - that was the language label for the content and green color in this case means default.
When you start a new translation, that label will turn to grey background, indicating that the content filled in is from the English version and used as a fallback. You can (and should) translate all fields marked with the purple icon with the two characters.
Note that while all fields are displayed, only those with the icon are translatable, changing any of the other fields would mean changing them in all languages. Tags themselves will be translated by a team of moderators.
Once saved, the label turns purple (indicating that a translation was saved), and on actually reloading would show the label of the translated language instead of the EN.