The current version of RSQKit is a work in progress. Any content should not be considered final at this stage.
Skip to content Skip to footer

Your tasks: Writing a CodeMeta file

What is CodeMeta?

CodeMeta is a community standard for interchanging software metadata records. It consists on a set of properties that extend Schema.org (a popular vocabulary designed to describe Digital Objects on the Web) with software-specific metadata (e.g., maintainer, build instructions, software documentation, etc.)

Why do you need a CodeMeta file?

Description

By adding a codemeta.json file in your root source code repository, you will ease metadata propagation between different archival infrastructures. For example, when obtaining DOIs for your code releases, you won’t need to fill in the corresponding software metadata again. CodeMeta is recognised and used by major code repositories and registries like Zenodo (Invenio RDM) and Software Heritage.

But how to create a codemeta.json file?

Considerations

  • You use a code repository such as GitHub as your software repository
  • You are knowledgeable about the metadata you want to describe. See the CodeMeta terms to understand which terms are expected. It is not needed to include a record of all terms, just the ones you know.

Solutions

  • Create a codemeta.json file through any of the means below:
    • By using the CodeMeta Generator, a form-based service to help you describe valid CodeMeta records.
    • By using the Software Metadata Extraction Framework command line and selecting the -c option to export a CodeMeta file generated from your README file and available documentation.
      • Alternatively, the following service will allow you downloading auto-generated CodeMeta files (remember to double check the results).
    • Manually, by using the following template as a reference. JSON-LD files can be validated with services like the JSON-LD Playground
  • Copy the file in your source code root directory

How to cite this page

TO DO.

Tools and resources

References

To be added.

Related pages

Tools and resources on this page

Skip national tools table

National resources

Tools and resources tailored to users in different countries.

Tool or resource Description Related pages Registry
Contributors