Publishing & Downloading

How to push & pull your research to and from Kyso using the Kyso CLI

The Kyso CLI pushes content to Kyso using a special file named kyso.yaml or kyso.json. Content in Kyso is structured across:

  1. Organizations

  2. Channels

Channels reside with Organizations. An organization can have multiple channels, and every channel can have an unlimited number of reports and discussions.

Kyso currently renders the following document-types (this list will continue to grow):

  • Jupyter Notebooks

  • HTML

  • Markdown

  • PDFs

  • PowerPoints

  • RTF Documents

  • SVS Microscopic Images

Publishing Reports

Let us illustrate how to push content to Kyso using an example. In this example we have a Jupyter Notebook report, which is in a folder named jupyter-genomics with the following structure:

├─ docs/
├─ images/
├─ notebooks/
│  ├─ product/
│  │  ├─ main.ipynb

To be able to push content, we must create a kyso.yaml file in the root folder (or in the frontmatter of the notebook in question), in this case, in the jupyter-genomics folder.

Refer to our documentation on Report Metadata to learn more:

pageConfiguring Report Metadata

Below is an example of a kyso.yaml file:

main: notebooks/product/main.ipynb
title: "Plotting Account Activity Levels"
description: "Measuring the relationship between team size and various engagement metrics like viewspostsand other actions. Should we be focusing more time on smaller accounts or only on the big fish?"
preview: images/preview.png
organization: acme
channel: general
tags: [engagement, revenue]

So, in this example, a report named "Plotting Account Activity Levels" will be created within the organization "acme" in the channel "general".

Once the kyso.yaml file is ready, you can run the following command to push the content:

acme-metrics % kyso push
Uploading report '.'
Report has 14 files
Successfully uploaded report!!

Now we can check that the report is successfully uploaded to Kyso:

Downloading Reports

Conversely, we can also download content from Kyso to our data science workspace from the terminal. Here we have two options:

  1. A kyso.yaml/json is in our current directory (with the relevant metadata) such that, when we run kyso pull. Kyso will read the metadata to know which report to download.

  2. You wish to update an existing report on Kyso. You can run the kyso clone command and explicitly state the project report you're looking for:

kyso clone <the report url> 

Downloading the report...
Successfully downloaded the report!!

Note that on a Kyso report, you can click "Clone" and copy the command to your clipboard.

Once you've made your changes, you can push the report back up to Kyso, which will render your latest version by default.

Last updated