Contributing
Why should you contribute, and what can you do to get involved in the development process of H5P? Let's have a look!
All size contributions to the H5P project are highly appreciated by everyone working on and using H5P. This can be anything from reporting bugs or problems in the forums, to contributing new content types or translating them.
Contributions from the community are extremely important to make sure that the H5P project moves forward in the right direction and as quickly as possible. By developing H5P content types instead of platform-specific content type plugins, you also get big benefits.
- H5P is designed for creating cross-platform content types. When you create a content type for H5P you create it for all our supported platforms as well.
- H5P has APIs and a modular architecture that makes development highly efficient. It took 5 minutes to make the Summary content type editable thanks to our powerful editor. When creating interactive video we reused more than 20 existing libraries.
- Your content type automatically gets all H5P features, they become exportable, importable, handles copyright information, fullscreen mode etc.
Suggesting changes
Do you feel like H5P is missing something or does the behavior of a content type seem very strange to you? You, the community, must not hesitate to create issues for what you consider improvements to H5P.
You can suggest these improvements in a forum post, or you can simply create a new issue for the project on GitHub. Say that you're not happy with the mobile view of our WordPress plugin, then simply add a new issue on GitHub suggesting how you think it should behave.
Contributing code
If you want to add new features to existing content types, and want your changes to be merged in quickly we advice you to follow our pull request guide.
If you're new to H5P development, check out some 'beginner-level' feature requests.
Create new content types
You can also contribute by creating new content types. Have a look at our Hello World tutorial for a fast introduction to coding new content types. Make sure you apply for developer access and share the content types you create here on H5P.org!
Extending
Content types can be included in other content types. If you wish for your content type to be used in Presentation or Interactive Video, you can create an issue or pull request on GitHub. Please note that if you're creating a task of some sort it would be wise to extend H5P.Question like Fill in the Blanks does.
Implementing
Lastly, you can contribute by using your coding skills to integrate H5P into a new web system or CMS. There are no guides for this yet, so the best start off point would be either the current Drupal 7 module or the WordPress plugin. Have a look at the source and post your questions to the forum, and we'll try to help.
Translating
Translating is an easy way for people to contribute and help H5P grow.
Translating Content Types
If you are familiar with Git and Github, you can go ahead and edit the relevant language file under ./languages and make a pull request. An overview of the translation status for our content types may be found here.
If you're not familiar with Github you'll need to create an account on Github.com and navigate to the content type you wish to add translations to. For example, here's the link for Interactive Video. The rest of the content types can be found on this page.
You will need to fork the project by pressing the 'fork' button, this makes a copy of the project you can edit. Edit the relevant language file. For example, if you want to contribute French translations, edit the /languages/fr.json file.
Once the file has been edited, make a pull request and it will be merged in and added to the next release of the content type.
Translating Modules and plugins
Drupal
Drupal translations are added through the localize.drupal.org community project.
Moodle
Translations for Moodle plugin can be added or edited using lang.moodle.org. Read the documentation to help you started. Select the component named 'hvp' (numbers aren't allowed in Moodle plugin name).
If you prefer to translate using a CAT tool you can convert the original mvp.php file from GitHub to PO using Translate Toolkit. After finishing with the translation use Translate Toolkit to convert the file back to PHP.
The translated mvp.php file can then be imported into lang.moodle.org, submitted in the form of a "Pull Request" on GitHub or posted on Translation contributions forum.
Wordpress
If you wish to translate the UI texts of the plugin you can do it the following way for WordPress:
- Go to the languages folder of the H5P plugin, copy the h5p-nb_NO.pot file and rename it to match your ISO 639-1 language code.
- Open the file in your favorite text editor, or a program called poedit (makes the job easier), and get on with your translating.
- Upload the finished file to the plugin's issue queue or create a new forum post, and we'll add it to the next release of the plugin.
If you have any questions about translating any of the plugins, please ask in the forum.
Spread the word
When the community grows more smart people works to make H5P better. Help H5P grow by spreading the word.
Sign up as an H5P Beta Tester
Help shape the user experience of H5P by testing new features, content types and plugins. You can contribute by joining the Beta Tester Group.
If you have any questions about contributing, feel free to leave a comment below.
Comments
Richard_elearns
Thu, 10/08/2015 - 12:33
Permalink
Contributing to documentation
Hello
I'd be happy to help with improving and further developing the documentation for H5P, if that would be useful. We are using the technology to develop a number of interactive videos and other shareable resource. My background is in Moodle nd Storyline but I think HP% has huge potential. Just let me know how I could help?
Regards
Richard Sharples
alkanadi
Thu, 08/11/2016 - 10:52
Permalink
The github links are broken
The github links are broken
fnoks
Thu, 08/11/2016 - 18:00
Permalink
Thank you so much for letting
Thank you so much for letting us know, we really appreciate it!
The broken links should be fine now.
jukka79
Fri, 02/24/2017 - 13:45
Permalink
trying to translate to swedish
Hi,
I am translating H5p.QuestionSet-1.12 UI to Swedish.
Copied the semantics.json and renamed it to sv.json. But drupal seems not to find it.
Cleared caches and run cron, but still when creating a new content in Swedish language it is not loading the new sv.json file. Checked that Drupal also is using "sv" lang code. What am I doing wrong?
The other language files seems to have "{ "semantics": [ which the semantics.json does not have.
Do I have to add that?
tim
Mon, 02/27/2017 - 09:35
Permalink
Hi jukka, you will have to
Hi jukka,
you will have to create a new sv.json language file just like the other languages and leave the semantics.json file where it is:
https://github.com/h5p/h5p-question-set/tree/master/language
You guessed correctly, the sv.json language file will also need "{ "semantics": [
I would take the Norwegian one as a template and translate that to Swedish. If you would like to make your translations part of the official version of Question Set (and not have to copy it over every time you upgrade) I would recommend making a pull request on github. If you're not familiar with how to do that just let me know.
Best regards,
Tim
Jose Manuel
Sat, 12/08/2018 - 01:52
Permalink
Change the h5p picture
Is it possible to use the picture of my page instead of the h5p one? if so who can do it and how much would it cost?
BV52
Mon, 12/10/2018 - 04:25
Permalink
Hi Jose,The easiest way is to
Hi Jose,
The easiest way is to use a PHP hook, to add your own CSS-file to the content type. Please visit the Visual Changes page for more details.
-BV52
bhavel
Mon, 02/17/2020 - 14:38
Permalink
how to get a new version t a new version of the library
I was successful and translated the library into Czech
https://github.com/h5p/h5p-interactive-video/blob/master/language/cs.json
but i dont know how I can get new version into Moodle?
yasinok423
Sun, 02/14/2021 - 11:31
Permalink
Course Presentation
Course Presentation'da Missing translations for library H5PEditor.CoursePresentation sorununu nasıl düzeltebilirim?
telugu
Fri, 06/04/2021 - 01:31
Permalink
Telugu translation - Need help
Hi,
I would like to contribute to translate H5P into Telugu. As suggested I am in github interactive video page, but how do I locate telugu language file? If it is /languages/te.json. Do I have to create a new json file? If. yes, how can I do please suggest.
Thanks in advance.
BV52
Fri, 06/04/2021 - 18:24
Permalink
Hi telugu,Someone from the
Hi telugu,
Someone from the community has contributed an easier way to translate content types. Please check this page for more details.
-BV
telugu
Wed, 02/01/2023 - 06:59
Permalink
Translated to Telugu using Weblate
I used Weblate It says it automatically added to H5P maintainers,
But I do not see the Telugu language progress in the Localization overview page.
telugu
Wed, 02/01/2023 - 06:59
Permalink
Translated to Telugu using Weblate
I used Weblate It says it automatically added to H5P maintainers,
But I do not see the Telugu language progress in the Localization overview page.
BV52
Wed, 02/01/2023 - 17:37
Permalink
Hi telugu,Unfortunately I
Hi telugu,
Unfortunately I haven't tried using this site to translate contents so I'm not 100% sure how everything works. What I though is that once you use that site to translate contents it automatically creates a pull request in H5P's repository. This pull request is then review by our developers and once we are sure that everything is in order the change is merge with the master file then released as an official version. If you are having issues with the site you can reach out to them through their contact form.
-BV
telugu
Wed, 02/01/2023 - 17:50
Permalink
Telugu language progress in licalization page
Thank you BV.
I submitted the form and I am just wondering Telugu is not there in the list in the page:- https://localization.h5p.org/
Same is asked in the contact form too! Hopefully they will guide me.
Thanks again!
Idecia Louis
Mon, 01/31/2022 - 05:11
Permalink
Notification
Please notify me when comment is posted