Skip to content

Commit

Permalink
Updating the readthedocs text
Browse files Browse the repository at this point in the history
  • Loading branch information
IFenton committed Aug 1, 2024
1 parent a6614fd commit 808d92e
Show file tree
Hide file tree
Showing 3 changed files with 29 additions and 29 deletions.
16 changes: 8 additions & 8 deletions docs/contributing.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,13 +35,13 @@ The Scivision project is fully open-source and invites contributions from anyone

Adding a model or dataset to the catalog makes it discoverable by other Scivision users.

See :ref:`contributing-to-the-scivision-catalog`.
See :ref:`contributing-a-model` or :ref:`contributing-a-datasource`.

#### Project pages

Adding a project page allows you to describe in more detail how your models / data in the Scivision catalog have been used. This can contain details of the project and links to example notebooks or papers that use them.

See :ref:`contributing-to-the-scivision-catalog`.
See :ref:`contributing-a-project`.

#### Bug reports

Expand Down Expand Up @@ -94,9 +94,9 @@ There are three ways in which you can contribute to the Scivision catalog: model

#### Preparing a model for inclusion in the catalog

In order to submit a model to the Scivision catalog, it must be publically available from a source repository or on a package server, so that it can installed using pip. The model must include everything needed to run it, including any weights and parameters.
In order to submit a model to the Scivision catalog, it must be publically available from a source repository or on a package server, so that it can installed using pip. The model must include everything needed to run it, including any weights and parameters. More details can be found in the :ref:`model-repo-template`.

Additionally, if you would like to be able to load your model using the Scivision API and run it on matching datasets present in the catalog, you must first set up the GitHub repository containing the model as per the :ref:`model-repo-template`.
Additionally, if you would like to be able to load your model using the Scivision API and run it on matching datasets present in the catalog, you must first set up the GitHub repository containing the model as explained [here](https://scivision.readthedocs.io/en/latest/model_repository_template.html#requirements-for-the-scivision-api).

#### Submitting your model to the catalog

Expand All @@ -120,9 +120,9 @@ After you are done, create a pull request with the changes. A Scivision maintain

#### Preparing a dataset for inclusion in the catalog

In order to submit a dataset to the Scivision catalog, your data must be in a publicly accessible location (for example, on [Zenodo](https://zenodo.org/)).
In order to submit a dataset to the Scivision catalog, your data must be in a publicly accessible location (for example, on [Zenodo](https://zenodo.org/)). More details can be found in the :ref:`data-repo-template`.

Additionally if you would like to be able to load your dataset via the Scivision API and run matching models from catalog on it, you must first set up a GitHub repository containing important metadata as per the :ref:`data-repo-template`.
Additionally if you would like to be able to load your dataset via the Scivision API and run matching models from catalog on it, you must first set up a GitHub repository containing important metadata as as explained [here](https://scivision.readthedocs.io/en/latest/data_repository_template.html#requirements-for-the-scivision-api).


#### Adding a new dataset to the catalog
Expand All @@ -149,7 +149,7 @@ After you are done, create a pull request to the original repo with the changes.
Once you have submitted your model / datasource for inclusion in the catalog, you might want to also consider submitting a project to provide some more details about how they have been used in your research.

#### Adding a new project to the catalog
To submit a project, enter the relevant details about it [here](https://sci.vision/new-project). This will create a .json file in the correct format. Open a [new issue on GitHub](https://github.com/alan-turing-institute/scivision/issues/new?assignees=&labels=catalog%2Cdata&projects=&template=new-datasource.md&title=%5BPROJECT%5D), attaching the .json file and an appropriate thumbnail (a 256x256 .png or .jpg file with the same name as the datasource). You will need a GitHub account.
To submit a project, enter the relevant details about it [here](https://sci.vision/new-project). This will create a .json file in the correct format. Open a [new issue on GitHub](https://github.com/alan-turing-institute/scivision/issues/new?assignees=&labels=catalog%2Cproject&projects=&template=new-project.md&title=%5BPROJECT%5D), attaching the .json file and an appropriate thumbnail (a 256x256 .png or .jpg file with the same name as the datasource). You will need a GitHub account.

Once your submission is accepted, the project will become visible to other users of Scivision, and it will appear on the [website](https://sci.vision/project-grid).

Expand All @@ -160,6 +160,6 @@ This section describes how to add a catalog entry by hand. These steps are an a

Fork the [Scivision repository](https://github.com/alan-turing-institute/scivision). Fill in [the form](https://sci.vision/new-project) on the scivision website to get the details for your project in to the correct format. On your new branch, add this information to the end of `projects.json` (found in `scivision/src/scivision/catalog/projects/`), under `"entries"`.

Additionally, upload a suitable thumbnail to the [thumbnail datasources folder](https://github.com/alan-turing-institute/scivision/tree/main/src/scivision/catalog/data/thumbnails/datasources). This must be a 256x256 .png or .jpg file with the same name as the datasource.
Additionally, upload a suitable thumbnail to the [thumbnail project folder](https://github.com/alan-turing-institute/scivision/tree/main/src/scivision/catalog/data/thumbnails/projects). This must be a 256x256 .png or .jpg file with the same name as the datasource.

After you are done, create a pull request to the original repo with the changes. A Scivision maintainer will approve the addition, and it will appear on the [website](https://sci.vision/project-grid).
24 changes: 12 additions & 12 deletions docs/data_repository_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,55 +6,55 @@ In order to include a dataset in the Scivision catalog, it must be hosted in a p

This guide explains how to ensure your datasets are compatible with Scivision. The basic requirements for addition to the Scivision catalog are described first. There are then details on the additional requirements to enable the dataset to be loaded / run through the scivision API.

These instructions will enable you to get your dataset into the correct format for adding to the Scivision "catalog". Once you have set up your dataset as per this guide, consult the [contributor page](./contributing.html#gift-contributing-to-the-scivision-catalog) for details of how to submit it.
These instructions will enable you to get your dataset into the correct format for adding to the Scivision "catalog". Once you have set up your dataset as per this guide, consult the [contributor page](https://scivision.readthedocs.io/en/latest/contributing.html#contributing-a-datasource) for details of how to submit it.


📚 **Contents:**

- :ref:`catalog`
- :ref:`data-catalog`
- :ref:`documentation`
- :ref:`data-license`
- :ref:`data-thumbnail`
- :ref:`api`
- :ref:`data-api`
- :ref:`data-repo-structure`
- :ref:`data-config-file`

<!-- - :ref:`example-data-repos` -->

.. _catalog:
.. _data-catalog:

## 📁 Requirements for the Scivision catalog

.. _documentation:

### 📄 Documentation
#### 📄 Documentation

Helpful information on the dataset and its origin should be included with the dataset, for example a `README` file. Without this, your dataset may not be accepted for inclusion in the Scivision catalog.

.. _data-license:

### 📜 Data license
#### 📜 Data license

You should include a `LICENSE` file, so that Scivision users who come across it can understand the conditions of the data's usage. For help deciding which license to include, check out the section on [data licenses](https://the-turing-way.netlify.app/reproducible-research/licensing/licensing-data.html) in The Turing Way online handbook.

.. _data-thumbnail:

### 🎆 Data Thumbnail
#### 🎆 Data Thumbnail

When viewing the dataset in [sci.vision](https://sci.vision/#/datasource-grid) a dataset thumbnail is required. The thumbnail can be an interesting image or slice of the dataset that catches the attention of the Scivision user (creativity encouraged!).

- It must be a 256x256 PNG or JPEG file
- The file name should be the name of the dataset as in the catalog

.. _api:
.. _data-api:

## ✨ Requirements for the Scivision API

.. _data-repo-structure:

For your data(s) to be loadable by the Scivision API, it is necessary to create a GitHub repo structure in a particular structure, and include a data config file.

### 🧱 Data repo structure
.. _data-repo-structure:

#### 🧱 Data repo structure

We recommend to set up a data repo for Scivision with the following structure, with the default name for the config file that the Scivision API will recognise being `.scivision/data.yml`:

Expand All @@ -69,7 +69,7 @@ exampleuser/data_repo

.. _data-config-file:

### 🖋️ Data config file
#### 🖋️ Data config file

The `scivision` python API relies upon another open source python tool called `intake` for loading datasets. We recommend creating a YAML format "intake catalog" (config file), to enable Scivision users who discover your dataset to easily load it via the API.

Expand Down
18 changes: 9 additions & 9 deletions docs/model_repository_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ In order to include a computer vision (CV) model in the Scivision catalog, a Git

This guide explains how to set up a GitHub repository for your CV model(s) compatible with Scivision. The basic requirements for addition to the Scivision catalog are described first. There are then details on the additional requirements to enable a model to be loaded / run through the scivision API. Followed by some features that are optional, but good to have.

These instructions will enable you to get your model into the correct format for adding to the Scivision "catalog". Once you have set up your model as per this guide, consult the [contributor page](./contributing.html#gift-contributing-to-the-scivision-catalog) for details of how to submit it.
These instructions will enable you to get your model into the correct format for adding to the Scivision "catalog". Once you have set up your model as per this guide, consult the [contributor page](https://scivision.readthedocs.io/en/latest/contributing.html#contributing-a-model) for details of how to submit it.

📚 **Contents:**

Expand Down Expand Up @@ -66,19 +66,19 @@ The essential components of a Scivision model repo include everything required f

.. _installations:

### 📄 Installation documentation
#### 📄 Installation documentation

A `README`, which includes detailed instructions on how the model can be installed. Without this, your model(s) will not be accepted for inclusion in the Scivision catalog.

.. _software-licence:

### 📜 Software license
#### 📜 Software license

You should include a `LICENSE` file in the repository, so that Scivision users who come across it can understand the conditions of its usage. For help deciding which license to include, see www.choosealicense.com or check out the section on [software licenses](https://book.the-turing-way.org/reproducible-research/licensing.html?highlight=license) in The Turing Way online handbook.

.. _model-thumbnail:

### 🎆 Model Thumbnail
#### 🎆 Model Thumbnail

When viewing the model in [sci.vision](https://sci.vision/#/model-grid) a model thumbnail is required. The thumbnail can be an interesting image explaining the model and that catches the attention of the Scivision user (creativity encouraged!).

Expand All @@ -95,7 +95,7 @@ For your model(s) to be loadable by the Scivision API, we additionally insist th

.. _model-code:

### 🏗️ Model code
#### 🏗️ Model code

The script called `model.py` must either contain the model itself (i.e. code that both trains and runs the model), or import a pre-trained model from elsewhere.

Expand All @@ -105,7 +105,7 @@ For examples, check out the [example model repos](#example-repos) section.

.. _config:

### 🖋️ Model config file
#### 🖋️ Model config file

The default name for the config file included in your repo should be `model.yml`, and should be kept in the `.scivision` directory. Take a look at this config from one of our example model repositories: [alan-turing-institute/plankton-cefas-scivision](https://github.com/alan-turing-institute/plankton-cefas-scivision):

Expand Down Expand Up @@ -140,7 +140,7 @@ It's also possible to specify multiple models from the same model repository. Fo

.. _pip:

### 🐍 Installability with pip
#### 🐍 Installability with pip

You can include a `setup.py` to enable the model(s) to be installed via pip, which is necessary for the Scivision API to be able to load the model(s). For an explanation of how this works, see this [packaging guide](https://packaging.python.org/en/latest/tutorials/packaging-projects/#configuring-metadata) for Python. By additionally including a `requirements.txt` with the required packages for your model, you can make it so these are installed along with the model code.

Expand Down Expand Up @@ -178,15 +178,15 @@ Some other components of a Scivision model repository that we recommend, but whi

.. _tests:

### 🧪 Tests
#### 🧪 Tests

Effective testing of code is vitally important to ensure the reliability of software, and in the context of scientific research code, the reproducibility of analyses and results.

We recommend that models repos submitted to the Scivision catalog are thoroughly tested. For more information of testing for research code, check out [The Turing Way](https://the-turing-way.netlify.app/reproducible-research/testing.html) online handbook.

.. _example-data:

### 📊 Example data
#### 📊 Example data

We recommend including a directory with a small amount of test image data, in a format that can be used by the model(s) in the repo. This will be useful for Scivision users who wish to try running your model(s).

Expand Down

0 comments on commit 808d92e

Please sign in to comment.