Skip to content

How to create content for the Cookbook

Stuart Chalk edited this page Feb 8, 2024 · 7 revisions

So you use the Cookbook all the time but have identified an important topic missing and realize that you are perfect to author a new contribution to the Cookbook! If this is you, here is how to submit a contribution to the Cookbook and what you will get out of your time and effort.

Criteria for a Contribution (each contribution is a recipe in the Cookbook)

  • Focused on training in (broadly) depositing chemical data, how to identify and extract chemically relevant metadata, and how to validate chemical data.
  • Focused on how to improve the FAIRness of chemical data, data processing, descriptive metadata, or chemical data access.
  • The topic cannot be a duplicate of an existing Cookbook resource, however, you may submit a different type of resource on the same topic as long as it expands or extends the educational impact of the Cookbook.
  • the recipe must fall in one of the following categories:
    • Data sources: Data that can be openly accessed, either to supplement research data or integrate with research data (aggregate analyses).
    • Tools & Web Services: Tools you can use to help you be more FAIR. These can be programs/packages installed on your computer or web-based services.
    • Data Manipulations: Atomized workflows for specific tasks related to managing machine-readable chemical data.
    • Use cases and workflows: Multiple stage (tasks) workflows to address specific use cases for preparing or reusing FAIR data.
  • Contribution page must include a metadata dropdown at the top of the file (right after the title) with metadata described here.
  • Available with an open license (preferably CC BY-SA). Check the license of any resource(s) you might redevelop for a contribution as those licenses must also be open.

Format of a Contribution

The Cookbook has been developed using the Jupyter Book (JB) Python package and administered on GitHub as an open repository. More details on the development of the Cookbook website can be found here, but the consequence of using JB is that the content needs to be submitted as either as Markdown (.md) files or Jupyter Notebook (.ipynb) (not to be confused with Jupyter Book). The difference between the two is as follows:

  • Markdown files (MD) are text files that can be written in any text editor using a syntax that allows the content to be easily converted in HTML (web page format). (See Creating Markdown Files)
  • Jupyter Notebook (JN) files are Python files allowing for both text and executable Python code that can be run in the browser via the Binder or Google Colab websites. JN files allow for a more interactive user experience but require a knowledge of Python to develop. (See Creating Jupyter Notebooks)

Creating your Contribution

Contributions to the Cookbook must contain at least one MD or JN file and can include additional files such as files (text, Word, Excel, etc.), images (.png only), and/or videos (links to YouTube). All content should be saved into one folder using the structure outlined here. This is important as it will simplify the addition of your contribution into the main structure of the project, once it has been reviewed and accepted.

Your contribution folder is just a folder on your computer, however its exact location is important based on how you intend to submit your contribution. If submit your contribution using the preferred mechanism, via a GitHub PR, then the folder must be part of a local clone of the Cookbook repository, and that folder must be monitored by git and in a piece of software that can manage the integration with GitHub. However, for those that submit via a GitHub Contribution Issue the folder can be anywhere on your hard drive. For options on working with the contribution folder in different pieces of software please see this page.