How to Publish your Web Component on the Open Data Hub Store¶
If you have developed a Web Component that you deem useful for the Open Data Hub project or that can be used on top of data provided by the Open Data Hub, you can share it and allow other to reuse it, by making it freely available on Open Data Hub's Web Components Store.
The only requirement for all the Web Components offered through the Store is that they must be released as an Open Source Licence, compatible with those used within the Open Data Hub project.
One of three alternatives can be chosen to publish a Web Component on the Store: as a full open source project, as a forked project, or using what we call the external workflow; the preferred being the first one.
When using the full open source path, you simply hand in the source code of your Web Component to the Open Data Hub team, no additional effort is required from your side. The code will be placed in a GIT repository, and immediately made available through the Store. Future versions of the Web component are developed under the control of the Open Data Hub team directly within this repository.
The forked project way will still see the Web Component’s source code saved in a GIT repository, but you own full control of it, and decide about its future versions. The difference with the previous method is that the updates are done by you in your repository and the Open Data Hub team will need to keep its copy synchronised with yours.
Finally, the the external workflow is the one is which nothing is saved in a GIT repository. You will maintain full control of the source code and of the Web Component’s development, including the right to pull it out of the store. Should you decide to follow this path, you will have to satisfy a few more requirements, to ensure proper integration with the Store:
You need to install in the root directory of your Web Component’s source code a suitable
wcs-manifest.jsonfile, that you will receive via pull request.
Your Web component must be saved (better if in minified form) under a
distdirectory, e.g., as
$ROOTis the root directory of your repository.
You need to tag a commit on your master branch with a semantic versioning tag, to communicate to the Store that the corresponding version should be published (example,
git tag -a "v1.2.3" -m "v1.2.3").
An example of these files and setup can be found in the published example of a generic map, that you can find at https://github.com/noi-techpark/webcomp-generic-map.
Finally, to ensure that your Web Component is kept updated in the Store, suitable pull requests will be sent to your repository.