1
0
mirror of https://github.com/oceanprotocol/docs.git synced 2024-11-26 19:49:26 +01:00

Merge branch 'main' into remove-gorli

This commit is contained in:
mihai 2024-05-31 14:29:20 +03:00
commit a44fedbfa5
37 changed files with 6 additions and 1068 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 387 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 370 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 184 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 358 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 167 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 165 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 127 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 251 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 182 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 506 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 277 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 158 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 72 KiB

View File

@ -14,14 +14,7 @@
- [Using Wallets](user-guides/wallets/README.md)
- [Set Up MetaMask](user-guides/wallets/metamask-setup.md)
- [Manage Your OCEAN](user-guides/wallets/wallets-and-ocean.md)
- [Using Ocean Market](user-guides/using-ocean-market.md)
- [Publish Data NFTs](user-guides/publish-data-nfts.md)
- [Buy NFT Data](user-guides/buy-data-nfts.md)
- [Compute-to-Data in Ocean Market](user-guides/compute-to-data/README.md)
- [Make a Boss C2D Algorithm](user-guides/compute-to-data/make-a-boss-c2d-algorithm.md)
- [Publish a C2D Algorithm NFT](user-guides/compute-to-data/publish-a-c2d-algorithm-nft.md)
- [Publish a C2D Data NFT](user-guides/compute-to-data/publish-a-c2d-data-nft.md)
- [Host Assets](user-guides/asset-hosting/README.md)
- [Data Storage](user-guides/asset-hosting/README.md)
- [Uploader](user-guides/asset-hosting/uploader.md)
- [Arweave](user-guides/asset-hosting/arweave.md)
- [AWS](user-guides/asset-hosting/aws.md)
@ -51,10 +44,6 @@
- [Get API Keys for Blockchain Access](developers/get-api-keys-for-blockchain-access.md)
- [Barge](developers/barge/README.md)
- [Local Setup](developers/barge/local-setup-ganache.md)
- [Build a Marketplace](developers/build-a-marketplace/README.md)
- [Forking Ocean Market](developers/build-a-marketplace/forking-ocean-market.md)
- [Customising a Market](developers/build-a-marketplace/customising-your-market.md)
- [Build and host your Data Marketplace](developers/build-a-marketplace/deploying-market.md)
- [Subgraph](developers/subgraph/README.md)
- [Get data NFTs](developers/subgraph/list-data-nfts.md)
- [Get data NFT information](developers/subgraph/get-data-nft-information.md)
@ -115,24 +104,8 @@
- [Data Value-Creation Loop](data-scientists/the-data-value-creation-loop.md)
- [What data is valuable?](data-scientists/data-engineers.md)
* [👀 Predictoor](predictoor/README.md)
* [💰 Data Farming](data-farming/README.md)
* [Passive DF (and veOCEAN)](data-farming/passivedf.md)
* [Guide to Passive DF](data-farming/passivedf-guide.md)
* [Liquid Staking](data-farming/liquid-staking.md)
* [Volume DF](data-farming/volumedf.md)
* [Guide to Volume DF](data-farming/volumedf-guide.md)
* [Delegation in Volume DF](data-farming/delegate.md)
* [Predictoor DF](data-farming/predictoordf.md)
* [Guide to Predictoor DF](data-farming/predictoordf-guide.md)
* [Claim Rewards](data-farming/claim-rewards.md)
* [Reward Schedule](data-farming/reward-schedule.md)
* [APYs](data-farming/apys.md)
* [Estimated APY vs Time](data-farming/apys-plot.md)
* [Guide to Estimating APY](data-farming/apys-guide.md)
* [FAQ](data-farming/faq.md)
* [🔨 Infrastructure](infrastructure/README.md)
* [Set Up a Server](infrastructure/setup-server.md)
* [Deploy a Marketplace](infrastructure/deploying-marketplace.md)
* [Deploy Aquarius](infrastructure/deploying-aquarius.md)
* [Deploy Provider](infrastructure/deploying-provider.md)
* [Deploy Ocean Subgraph](infrastructure/deploying-ocean-subgraph.md)

View File

@ -1,64 +0,0 @@
---
description: Earn OCEAN rewards by predicting (and more streams to come).
cover: ../.gitbook/assets/cover/data_farming_banner.png
coverY: 0
---
# What is Data Farming?
**Data Farming (DF) is Ocean's incentive program.** It rewards OCEAN to participants who make predictions (and more streams to come).
**[The DF webapp](https://df.oceandao.org)** is where users perform most DF actions.
## Current DF Streams & Budgets
DF currently has one stream:
- **[Predictoor DF](predictoordf.md).** Run prediction bots to earn continuously. 37,500 OCEAN/week + ROSE rewards.
All streams repeat **weekly** that start on Thursdays 00:00 at UTC and end on Wed at 23:59 UTC.
DF Streams evolve over time. The next two sections cover past & future DF streams.
## Past DF Streams
In **Passive DF**, users locked OCEAN for veOCEAN. In **Active DF**, users allocated veOCEAN to curate data assets.
- veOCEAN, Passive DF, and Active DF were [retired](https://blog.oceanprotocol.com/passive-volume-data-farming-airdrop-has-completed-they-are-now-retired-6933520b5fcb) on May 3, 2024, alongside an an airdrop to veOCEAN holders.
- **veOCEAN holders can claim airdrop & past rewards at [df.oceandao.org/rewards](https://df.oceandao.org/rewards)**.
- The locked OCEAN will unlock according to its schedule (up to 4 years)
- [This article](https://blog.oceanprotocol.com/passive-volume-data-farming-airdrop-has-completed-they-are-now-retired-6933520b5fcb) has details.
In **Challenge DF**, users did weekly one-off predictions. It was [retired](https://blog.oceanprotocol.com/df62-completes-and-df63-launches-predictoor-df-is-here-081fc78ceb70) on Nov 30, 2023.
For further details, the ["Data Farming Series" article](https://blog.oceanprotocol.com/ocean-data-farming-series-c7922f1d0e45) chronicles week-by-week rewards and DF evolution.
## Future DF Streams
Potential DF evolution includes:
- Scaling up Predictoor DF rewards. [Details](https://blog.oceanprotocol.com/ocean-protocol-update-2024-e463bf855b03#4da0).
- New stream: run Unified Backend nodes. [Details](https://blog.oceanprotocol.com/ocean-protocol-update-2024-e463bf855b03#f779).
- New stream: decentralized model training for world-world models. [Details]([Details](https://blog.oceanprotocol.com/ocean-protocol-update-2024-e463bf855b03#4da0).)
## Networks
To engage in Predictoor DF, users submit Predictions on Oasis Sapphire. Rewards for Predictoor DF are on Oasis Sapphire as well (it's intertwined).
Passive DF and Volume DF reward payouts are on Ethereum network.
The [networks docs](../discover/networks/README.md) have more info.
## Further resources
- The **[DF FAQ](faq.md)** answers more questions.
- Main DF github repos: [df-py (backend)](https://github.com/oceanprotocol/df-py), [df-web (frontend)](https://github.com/oceanprotocol/df-web)
- The [Ocean Data Farming Series](https://blog.oceanprotocol.com/ocean-data-farming-series-c7922f1d0e45) article has a chronological account of all Data Farming activities since its inception. It links to related blog posts.
----
_Next: [Predictoor DF](predictoordf.md)_
_Back: [Docs main](../README.md)_

View File

@ -1,72 +0,0 @@
---
title: Data Farming FAQ
description: Frequently Asked Questions about Data Farming
---
## Data Farming FAQ
### Staking and Risk
<details>
<summary>What does "staking" mean in an Ocean context?</summary>
Its precise meaning depends on the DF stream.
- Predictoor DF: put OCEAN into a prediction transaction
</details>
<details>
<summary>Are there any risks associated with DF?</summary>
As with any system, inherent risks exist. We try to minimize them, as follows.
- Predictoor DF: you stake a small amount of OCEAN in each epoch (eg every 5min). If issues arise, you can get out quickly.
</details>
<details>
<summary>Is there any impermanent loss (IL) in my staking?</summary>
No. IL is typically associated with providing liquidity to decentralized exchange or pools. There are no pools involved in any of the DF streams [1].
</details>
### Rewards Payout
<details>
<summary>What APYs can I expect?</summary>
For Predictoor DF, it varies a lot based on your prediction accuracy, and more.
</details>
<details>
<summary>Can the DF rewards change during a given week?</summary>
No. At the beginning of a new DF round, rules are laid out, either implicitly if no change from the previous round, or explicitly in a blog post if there are new rules.
Caveat: its "no" at least in theory! Sometimes there may be tweaks if there is community consensus or a bug.
</details>
<details>
<summary>Where do I learn more about Predictoor DF?</summary>
In its [docs page](predictoordf.md).
</details>
Congrats! You've completed reading Data Farming docs.
_Next: Jump to [DF main](README.md)._
_Or: Jump to [Docs main](../README.md) and click on your interest._
_Back: [Predictoor DF Guide](predictoordf-guide.md)_

View File

@ -1,34 +0,0 @@
---
description: >-
How to earn $ via predictoor DF
---
# Guide to Predictoor DF
<figure><img src="../.gitbook/assets/gif/money-robot.gif" alt=""></figure>
In Predictoor DF (and Predictoor proper), you run prediction bots to earn continuously. This guide describes how to become eligible for OCEAN rewards and claim them; and the same for Oasis ROSE rewards. And of course first thing you need to do is become a predictoor.
## How to become a predictoor
- Play with the dapp: http://predictoor.ai
- Then go through "How to earn as a Predictoor" in [Predictoor docs](https://docs.predictoor.ai)
- Or, go straight to the [quickstart README](https://github.com/oceanprotocol/pdr-backend/blob/main/READMEs/predictoor.md) :) 🏎️
## On OCEAN Rewards in Predictoor DF
- **Duration:** ongoing
- **To be eligible:** predictoors are automatically eligible 🧘
- **To claim:** recall that the OCEAN rewards act as more sales coming to you (as a predictoor). So you claim your OCEAN from sales in the usual way, by running the OCEAN payout script. See the [payout README](https://github.com/oceanprotocol/pdr-backend/blob/main/READMEs/payout.md) for specific instructions.
## On ROSE rewards in Predictoor DF
- ⚠️ **To be eligible** for a given DF round: you MUST run [OCEAN payout script](https://github.com/oceanprotocol/pdr-backend/blob/main/READMEs/payout.md) <= 4 days after the round ends, i.e. between Thu 00:00 UTC & Sun 11:59 PM UTC
- **To claim:** See the [payout README](https://github.com/oceanprotocol/pdr-backend/blob/main/READMEs/payout.md) for specific instructions.
----
_Next: Jump to [DF FAQ](faq.md)._
_Back: [Predictoor DF](predictoordf.md)_

View File

@ -1,55 +0,0 @@
---
description: >-
Baseline sales for predictoors
---
<figure><img src="../.gitbook/assets/data-farming/predictoordf_main.png" alt=""></figure>
**This page** is about Predictoor DF, and [this page](predictoordf-guide.md) is a guide.
# Predictoor DF Overview
**Predictoor DF** is a DF stream that amplifies predictoors earnings, via extra sales to Ocean Predictoor data feeds.
Predictoor DF has 37,500 OCEAN weekly rewards (ongoing) and 20,000 ROSE weekly rewards (throughout 2024).
## Introduction
**[Ocean Predictoor](../predictoor/README.md)** data feeds predict whether BTC, ETH etc will rise or fall 5min or 1h into the future. These feeds are crowdsourced by “predictoors”: people running AI-powered prediction bots.
**[Data Farming (DF)](../data-farming/README.md)** is Oceans incentive program, that rewards OCEAN to people who lock OCEAN or do active DF activities.
You should be familiar with both Predictoor and DF before reading on.
## Predictoor DF Timing
Predictoor DF started counting on Nov 9, 2023, at the beginning of Data Farming Round 63 (DF63). It runs indefinitely.
## Predictoor DF Rewards
Predictoor DF has two components: [OCEAN](https://oceanprotocol.com/about-us/ocean-token) rewards and [Oasis ROSE](https://www.coingecko.com/en/coins/oasis-network) rewards.
### OCEAN Rewards
- A special “DF buyer” bot purchases Predictoor feeds. It started operating on Nov 9, 2023. Every day, it spends 1/7 of the weekly Predictoor OCEAN budget for another 24h subscription. It spends an equal amount per feed. (Currently there are feeds: 10 x 5min, 10 x 1h.)
- The OCEAN comes from the Ocean DF budget, and specifically, the Active DF budget.
### ROSE Rewards
- Payout happens on Mondays, 4 days after the end of the DF round.
- ⚠️ To be counted for ROSE rewards of a given DF round, you must claim your OCEAN rewards for that DF round. See [Predictoor DF user guide](predictoordf-guide.md).
- Payout for a given predictoor is pro-rata to the net earnings of that predictoor over that DF round, specifically (total sales $ to the predictoor) minus (predictoor stake slashed due to being wrong).
- The ROSE comes from a generous contribution of[ Oasis Protocol Foundation](https://oasisprotocol.org/) 👪🙏.
## How to Earn $ Via Predictoor DF
**Running a predictoor bot will automatically make you eligible for Predictoor DF rewards.**
The [Predictoor DF user guide](predictoordf-guide.md) tells how to get started as a predictoor, and how to claim rewards.
----
_Next: [Predictoor DF Guide](predictoordf-guide.md)_
_Back: [DF Main](README.md)_

View File

@ -10,7 +10,7 @@ coverY: 0
1. **Token-gated dApps & REST APIs**: monetize by making your dApp or its REST API token-gated. [Here's how](https://github.com/oceanprotocol/token-gating-template).
1. **AI dApps**: monetize your AI dApp by token-gating on AI training data, feature vectors, models, or predictions.
1. **Data Markets**: build a decentralized [data market](../developers/build-a-marketplace/README.md).
1. **Data Markets**: build a decentralized data market. [Here's how](https://github.com/oceanprotocol/market)
1. **Private user profile data**: storing user profile data on your centralized server exposes you to liability. Instead, have it on-chain encrypted by the user's wallet, and just-in-time decrypt for the app. [Video](https://www.youtube.com/watch?v=xTfI8spLq1k&ab_channel=ParticleNetwork), [slides](https://docs.google.com/presentation/d/1_lkDVUkA0Rx1R7RpkaSeLkX3PeOBoMQyRhvxjwTvd6A/edit?usp=sharing).
Example live dapps:

View File

@ -41,7 +41,7 @@ Additionally, in supporting the discovery process, middleware components come in
Here, the ocean comes alive with a vibrant ecosystem of dApps, marketplaces, and more. This layer hosts a variety of user-friendly interfaces, applications, and tools, inviting data scientists and curious explorers alike to access, explore, and contribute to the ocean's treasures.
Prominently featured within this layer is [Ocean Market](../user-guides/using-ocean-market.md), a hub where data enthusiasts and industry stakeholders converge to discover, trade, and unlock the inherent value of data assets. Beyond Ocean Market, the Application Layer hosts a diverse ecosystem of specialized applications and marketplaces, each catering to unique use cases and industries. Empowered by the capabilities of Ocean Protocol, these applications facilitate advanced data exploration, analytics, and collaborative ventures, revolutionizing the way data is accessed, shared, and monetized.
Prominently featured within this layer is [Ocean Market](https://market.oceanprotocol.com), a hub where data enthusiasts and industry stakeholders converge to discover, trade, and unlock the inherent value of data assets. Beyond Ocean Market, the Application Layer hosts a diverse ecosystem of specialized applications and marketplaces, each catering to unique use cases and industries. Empowered by the capabilities of Ocean Protocol, these applications facilitate advanced data exploration, analytics, and collaborative ventures, revolutionizing the way data is accessed, shared, and monetized.
### Layer 4: The Friendly Wallets

View File

@ -1,46 +0,0 @@
---
title: Forking Ocean Market
description: Forking and customizing Ocean Market (Frontend)
---
# Build a Marketplace
## Outcome
Your own fully functioning customized fork of Ocean Market is deployed and working.
## Introduction
Have you ever thought about monetizing digital assets over the blockchain? Your first instinct might be to head on over to a popular marketplace - but why not create your own marketplace? Its a lot easier than you might imagine. This guide will cover everything you need to start your own blockchain marketplace in less than an hour. The reason its so easy is that well be starting with a fork of Ocean Market, which provides us with some pretty cool tech under-the-hood (if youre interested in blockchain, read on).
Using Ocean Market is already a big improvement on the alternatives that are out there, but it gets even better. Ocean Market is completely open-source and freely available under the Apache 2 license. This means that you can fork Ocean Market and set up your own marketplace in just a few steps. Ocean Market is primarily focused on monetizing data, but it can actually handle the sale of any digital asset. This guide will walk you through the process of forking Ocean Market and starting your own marketplace for selling photos; youll be surprised how easy it is. No prior blockchain knowledge is required!
## Content
The tutorial covers:
* [Forking and running Ocean Market locally](forking-ocean-market.md)
* [Customizing your fork of Ocean market](customising-your-market.md)
* [Quick deployment of Ocean Market](deploying-market.md)
## Preparation
**Prior knowledge**
If youre completely unfamiliar with Ocean Market or web3 applications in general, you will benefit from reading these guides first:
* To use your clone of Ocean Market, youll need a [wallet](../../user-guides/wallets/README.md). We recommend [getting set up with metamask](../../user-guides/wallets/metamask-setup.md).
* Youll also need some [OCEAN on a testnet](../../user-guides/wallets-and-ocean.md) to use your marketplace.
* When you have the testnet tokens, have a go at [publishing a data NFT](../../user-guides/publish-data-nfts.md) on Ocean Market.
* Run through the process of [consuming a data asset](../../user-guides/buy-data-nfts.md) on Ocean Market.
**Required Prerequisites**
* Git. Instructions for installing Git can be found [here](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git).
* Node.js can be downloaded from [here](https://nodejs.org/en/download/) (were using version 18 in this guide)
* A decent code editor, such as [Visual Studio Code](https://code.visualstudio.com/).
* Youll need a Github account to fork Ocean Market via [Github](https://github.com/).
{% hint style="warning" %}
Let's emphasize an important aspect of building dApps. It's crucial to keep in mind that practically everything can be added to the blockchain 😵 When you integrate with these components, it becomes **crucial** for you, as a developer, to ensure **proper sanitization** of the responses on your end. This means you should carefully **validate and filter** the data received to **prevent** any potential vulnerabilities or security risks in your applications.
{% endhint %}

View File

@ -1,211 +0,0 @@
---
title: Customising Market
description: Step by step guide to customizing your fork of Ocean market
---
# Customising a Market
So youve got a fully functioning data marketplace at this point, which is pretty cool. But it doesnt really look like your data marketplace. Right now, its still just a clone of Ocean Market — the same branding, name, logo, etc. The next few steps focus on personalizing your data marketplace.
* Change your Market Name
* Change the Logo
* Change the Styling
* Edit the Publish Form
* Advanced customization
## Change your Market Name
Its now time to open up your favorite code editor and start getting stuck into the code. The first thing we will be doing is changing the name of your marketplace. A decent code editor (such as VS Code) makes this incredibly simple by searching and replacing all the places where the name appears.
Lets start by searching and replacing `Ocean Marketplace`. In VS Code there is a magnifying glass symbol in the left-hand panel (arrow 1 in the image below) that will open up the interface for searching and replacing text. Type “Ocean Marketplace” into the first textbox, and the name of your marketplace into the second textbox (arrow 2). To make things simple, there is a button to the right of the second textbox (arrow 3) that will replace all instances at once. You can take a moment to review all the text youre changing if you wish, and then click this button.
![Market Customisation](../../.gitbook/assets/market/market-customisation-3.png)
Next up, we need to repeat the process but this time well be searching for and replacing `Ocean Market`. As you can see in the screenshot below, we have called our fork `Crypto Photos Market`.
![Market Customisation](../../.gitbook/assets/market/market-customisation-4.png)
![Market Customisation](../../.gitbook/assets/market/market-customisation-4.1.png)
![Market Customisation](../../.gitbook/assets/market/market-customisation-4.2.jpg)
Now lets change the tagline of your site. Open up the folder called `content` and then open the file called `site.json`.
![Market Customisation](../../.gitbook/assets/market/market-customisation-5.png)
On line 3 in this file, you can enter the tagline that you want for your marketplace.
![Market Customisation](../../.gitbook/assets/market/market-customisation-6.png)
![Market Customisation](../../.gitbook/assets/market/market-customisation-6.1.png)
## Change the Logo
The next important step to personalizing your marketplace is setting up your own logo. We highly recommend using your logo in SVG format for this. The site logo is stored in the following location:
```
src/@images/logo.svg
```
Delete the `logo.svg` file from that folder and paste your own logo in the same folder. Then, if you rename your `logo.svg` everything will work without any problems.
At this point, its a good idea to check how things are looking. First, check that you have saved all of your changes, then cancel the build thats running in your terminal (Ctrl + C OR Cmnd + C) and start it again `npm start`. Once the build has finished, navigate to http://localhost:8000/ and see how things look.
![Market Customisation](../../.gitbook/assets/market/market-customisation-7.1.png)
Awesome! Our logo is looking great!
## Change the Styling
Hopefully, you like our pink and purple branding, but we dont expect you to keep it in your own marketplace. This step focuses on applying your own brand colors and styles.
### Background
Lets start with the background. Open up the following CSS file:
```
src/components/App/index.module.css
```
Youll notice in the screenshot above that we are setting our `wave` background on line 3. Here, youll want to use your own background color or image. For this example, well use an SVG background from [here](https://www.svgbackgrounds.com/). First, we save the new background image into the src/images/ folder (same folder as the logo), then we change the CSS to the file location of the new background (see line 3 in the image below).
![Market Customisation](../../.gitbook/assets/market/market-customisation-8.png)
If we save this file and view the site at this point, we get a white section at the top (see image below). And youll also notice that the background doesnt fill all the way down to the bottom of the screen.
![Market Customisation](../../.gitbook/assets/market/market-customisation-10.1.png) ![Market Customisation](../../.gitbook/assets/market/market-customisation-10.2.png)
To fix this, we need to change the starting position of the background image and change it from no-repeat to repeat. We can do this on line 3.
When we view our marketplace, we can see that the new background starts at the top and fills the whole page. Perfect!
![Market Customisation](../../.gitbook/assets/market/market-customisation-11.1.png)
### Brand Colors
Next up, lets change the background colors to match your individual style. Open up the following file: `src/global/_variables.css`. Here youll see the global style colors that are set. Now is the time to get creative, or consult your brand handbook (if you already have one).
You can change these colors as much as you wish until youre happy with how everything looks. Each time you save your changes, the site will immediately update so you can see how things look. You can see the styles chosen for this example in the image below.
![Market Customisation](../../.gitbook/assets/market/market-customisation-12.png)
### Change Fonts
The final part of the styling that well alter in this guide is the fonts. This is an important step because the font used in Ocean Market is one of the few elements of the market that are **copyright protected**. If you want to use the same font youll need to purchase a license. The other copyrighted elements are the logo and the name — which we have already changed.
If you dont already have a brand font, head over to Google Fonts to pick some fonts that suit the brand youre trying to create. Google makes it nice and easy to see how theyll look, and its simple to import them into your project.
The global fonts are set in the same file as the colors, scroll down and youll see them on lines 36 to 41.
If you are importing fonts, such as from Google Fonts, you need to make sure that you include the import statement at the top of the `_variables.css` file.
As with the color changes, its a good idea to save the file with each change and check if the site is looking the way that you expected it to. You can see our eclectic choices below.
![Market Customisation](../../.gitbook/assets/market/market-customisation-13.png)
## Customize the Publish Form
Lets head to the publish page to see what it looks like with our new styling - so far, so good. But there is one major issue, the publish form is still telling people to publish datasets. On our new marketplace, we want people to publish and sell their photos, so were going to have to make some changes here.
![Market Customisation](../../.gitbook/assets/market/publish-page-before-edit.png)
Open up the `index.json` file from `content/publish/index.json` - here we change the text to explain that this form is for publishing photos.
![Market Customisation](../../.gitbook/assets/market/market-customisation-15.png)
Additionally, the asset type currently says dataset, and we need to change this so that it says photo. The simplest way to do this is to change the title of the asset type without changing anything else. Ocean can handle selling any digital asset that can be accessed via a URL, so no further changes are needed to accommodate selling photos.
Open up `src/components/Publish/Metadata/index.tsx` and change line 33 so that it says `Photo`
![Market Customisation](../../.gitbook/assets/market/market-customisation-18.png)
Great, now our publish page explains that users should be publishing photos and the photo is provided as an asset type option. Well also leave the algorithm as an option in case some data scientists want to do some analysis or image transformation on the photos.
![Market Customisation](../../.gitbook/assets/market/publish-page-2.png)
There is one more thing that is fun to change before we move away from the publish form. Youll notice that Ocean Market now has a cool SVG generation feature that creates the images for the Data NFT. It creates a series of pink waves. Lets change this so that it uses our brand colors in the waves!
Open up `/src/@utils/SvgWaves.ts` and have a look at lines 27 to 30 where the colors are specified. Currently, the pink color is the one used in the SVG generator. You can replace this with your own brand color:
![Market Customisation](../../.gitbook/assets/market/market-customisation-21.png)
If youre interested in doing some further customization, take a look at lines 53 to 64. You can change these properties to alter how the image looks. Feel free to play around with it. Weve increased the number of layers from 4 to 5.
![Market Customisation](../../.gitbook/assets/market/market-customisation-22.png)
And now your customized publish page is ready for your customers:
![Market Customisation](../../.gitbook/assets/market/market-customisation-20.png)
## Advanced customization
This important step is the last thing that we will change in this guide. To set the marketplace fees and address, youll need to save them as environmental variables. You'll also need to set the environmental variables if you customized services like Aquarius, Provider, or Subgraph.
First, we are going to create a new file called `.env` in the root of your repository.
Copy and paste the following into the file:
```bash
NEXT_PUBLIC_MARKET_FEE_ADDRESS="0x123abc"
NEXT_PUBLIC_PUBLISHER_MARKET_ORDER_FEE="0.01"
NEXT_PUBLIC_PUBLISHER_MARKET_FIXED_SWAP_FEE="0.01"
NEXT_PUBLIC_CONSUME_MARKET_ORDER_FEE="0.01"
NEXT_PUBLIC_CONSUME_MARKET_FIXED_SWAP_FEE="0.01"
#
# ADVANCED SETTINGS
#
# Toggle pricing options presented during price creation
#NEXT_PUBLIC_ALLOW_FIXED_PRICING="true"
#NEXT_PUBLIC_ALLOW_FREE_PRICING="true"
# Privacy Preference Center
#NEXT_PUBLIC_PRIVACY_PREFERENCE_CENTER="true"
# Development Preference Center
#NEXT_PUBLIC_PROVIDER_URL="http://xxx:xxx"
#NEXT_PUBLIC_SUBGRAPH_URI="http://xxx:xxx"
#NEXT_PUBLIC_METADATACACHE_URI="http://xxx:xxx"
#NEXT_PUBLIC_RPC_URI="http://xxx:xxx"
```
### Change the Fee Address
At this point, we have made a lot of changes and hopefully, youre happy with the way that your marketplace is looking. Given that you now have your own awesome photo marketplace, its about time we talked about monetizing it. Yup, thats right - you will earn a [commission](../contracts/fees.md) when people buy and sell photos in your marketplace. In Ocean, there are a whole host of [fees](../contracts/fees.md) and customization options that you can use. In order to receive the fees youll need to set the address where you want to receive these fees in.
When someone sets the pricing for their photos in your marketplace, they are informed that a commission will be sent to the owner of the marketplace. You see that at the moment this fee is set to zero, so youll want to increase that.
You need to replace “0x123abc” with your Ethereum address (this is where the fees will be sent).
### Change the Fees Values
You can also alter the fees to the levels that you intend them to be at. If you change your mind, these fees can always be altered later.
Go to [Fees page](../contracts/fees.md) to know more details about each type of fee and its relevance.
![Market Customisation](../../.gitbook/assets/market/market-customisation-23.png)
It is important that the file is saved in the right place at the root of your repository, your file structure should look the same as below.
![Market Customisation](../../.gitbook/assets/market/market-customisation-24.png)
Now thats it; you now have a fully functioning photo marketplace that operates over the blockchain. Every time someone uses it, you will receive revenue.
![Market Customisation](../../.gitbook/assets/market/market-customisation-25.png)
### Using a custom Provider
You have the flexibility to tailor the ocean market according to your preferences by directing it to a predetermined custom [provider](https://github.com/oceanprotocol/provider/) deployment. This customization option allows you to choose a specific default provider, in addition to the option of manually specifying it when publishing an asset. To make use of this feature, you need to uncomment the designated line and modify the URL for your custom provider in the previously generated `.env` file. Look for the key labeled `NEXT_PUBLIC_PROVIDER_URL` and update its associated URL accordingly.
### Using a custom MetadataCache
If you intend to utilize the ocean market with a custom [Aquarius](../aquarius/README.md) deployment, you can also make set a custom MetadataCache flag. To do this, you will need to update the same file mentioned earlier. However, instead of modifying the `NEXT_PUBLIC_PROVIDER_URL` key, you should update the `NEXT_PUBLIC_METADATACACHE_URI` key. By updating this key, you can specify the URI for your custom Aquarius deployment, enabling you to take advantage of the ocean market with your preferred metadata cache setup.
### Using a custom subgraph
Using a custom subgraph with the ocean market requires additional steps due to the differences in deployment. Unlike the multi-network deployment of the provider and Aquarius services, each network supported by the ocean market has a separate subgraph deployment. This means that while the provider and Aquarius services can be handled by a single deployment across all networks, the subgraph requires specific handling for each network.
To utilize a custom subgraph, you will need to implement additional logic within the `getOceanConfig` function located in the `src/utils/ocean.ts` file. By modifying this function, you can ensure that the market uses the desired custom subgraph for the selected network. This is particularly relevant if your market aims to support multiple networks and you do not want to enforce the use of the same subgraph across all networks. By incorporating the necessary logic within `getOceanConfig`, you can ensure the market utilizes the appropriate custom subgraph for each network, enabling the desired level of customization. If the mentioned scenario doesn't apply to your situation, there is another approach you can take. Similar to the previously mentioned examples, you can modify the `.env` file by updating the key labeled `NEXT_PUBLIC_SUBGRAPH_URI`. By making changes to this key, you can configure the ocean market to utilize your preferred subgraph deployment. This alternative method allows you to customize the market's behavior and ensure it utilizes the desired subgraph, even if you don't require different subgraph deployments for each network.

View File

@ -1,42 +0,0 @@
---
title: Deployment of Ocean Market
description: Step by step guide to a quick deployment of Ocean Market
---
# Build and host your Data Marketplace
All thats left is for you to host your data marketplace and start sharing it with your future users.
## **Build and host your marketplace using surge**
To host your data marketplace, you need to run the build command:
```bash
npm run build:static
```
This takes a few minutes to run. While this is running, you can get prepared to host your new data marketplace. You have many options for hosting your data marketplace (including AWS S3, Vercel, Netlify and many more). In this guide, we will demonstrate how to host it with surge, which is completely free and very easy to use. You can also refer to this [tutorial](../../infrastructure/deploying-marketplace.md) from the infrastructuree section as well if you want to deploy your market in you own infrastructure using docker.
Open up a new terminal window and run the following command to install surge:
```bash
npm install --global surge
```
When this is complete, navigate back to the terminal window that is building your finished data marketplace. Once the build is completed, enter the following commands to enter the public directory and host it:
```bash
cd out
```
```bash
surge
```
If this is your first time using surge, you will be prompted to enter an email address and password to create a free account. It will ask you to confirm the directory that it is about to publish, check that you are in the market/public/ directory and press enter to proceed. Now it gives you the option to choose the domain that you want your project to be available on.
<figure><img src="../../.gitbook/assets/market/Screenshot 2023-06-14 at 14.30.59.png" alt=""><figcaption><p>surge interaction</p></figcaption></figure>
We have chosen https://crypto-photos.surge.sh which is a free option. You can also set a CNAME value in your DNS to make use of your own custom domain.
After a few minutes, your upload will be complete, and youre ready to share your data marketplace. You can view the version we created in this guide [here](https://crypto-photos.surge.sh/).

View File

@ -1,55 +0,0 @@
---
title: Forking Ocean Market
description: Forking and running Ocean Market locally.
---
# Forking Ocean Market
One of the best use cases for Ocean is running your own marketplace and monetizing your digital assets. With Ocean you can sell your data directly to your customers with no third party in-between, no need to speak to data with data brokers. Ocean makes this all super easy for you with some pretty cool tech under the hood. Furthermore, an Ocean powered market isn't just limited to selling data, you can use it for selling any type of digital asset!
Using Ocean Market is already a big improvement on the alternatives that are out there, but it gets even better. Ocean Market is completely open-source and made freely available under the Apache 2 license. This means that you can fork Ocean Market and set up your own data marketplace in just a few steps. This guide will walk you through the process, youll be surprised how easy it is. No prior blockchain knowledge is required!
* Fork Ocean Market
* Clone the market locally
* Install the dependencies
* Run your Market fork for the first time
## Fork Ocean Market
The first step is to log into Github and navigate to the [Ocean Market repository](https://github.com/oceanprotocol/market), youll need to log in or create a Github account. Now you need to click “Fork” in the top right-hand corner. If you are a member of an organization on Github, it will give you the option to clone it into either your personal account or the organization. Choose whichever is suitable for you.
## Clone the market locally
Now we need to clone the market fork locally so that we can start making changes to the code. Upon forking Ocean Market, GitHub will take you to the repository page. Here, you should copy the URL of the repository. To do this, click on the green “Code” button and then click the copy icon to copy the HTTPS URL. Make sure that you have git installed and set up and installed on your computer before proceeding. See [this guide](https://git-scm.com/) if youre not familiar with git.
## Install the dependencies
Installing the dependencies is a vital step for running the market. Its a super simple process, thanks to npm (node package manager). Make sure you have node.js installed, otherwise it will fail. In Ocean Market its highly recommended that you use the same version of node that we are using, you can check this in the [.nvmrc file](https://github.com/oceanprotocol/market/blob/main/.nvmrc).
Enter the following command to install the dependencies:
```bash
npm install
```
This command will take a few minutes to complete and youll see some warnings as it runs (no need to worry about the warnings).
## Run your Market fork for the first time
At this point, you are ready to run your data marketplace for the first time. This is another straightforward step that requires just one command:
```bash
npm start
```
The above command will build the development bundle and run it locally.
<figure><img src="../../.gitbook/assets/market/Screenshot 2023-06-13 at 14.39.17.png" alt=""><figcaption><p>Forking Ocean Market</p></figcaption></figure>
Great news - your marketplace has successfully been built and is now running locally. Lets check it out! Open your browser and navigate to http://localhost:8000/. Youll see that you have a full-on clone of Ocean Market running locally. Give it a go and test out publishing and consuming assets - everything works!
Thats all thats required to get a clone of Ocean market working. The whole process is made simple because your clone can happily use all the smart contracts and backend components that are maintained by Ocean Protocol Foundation.
<figure><img src="../../.gitbook/assets/market/Screenshot 2023-06-13 at 14.43.25.png" alt=""><figcaption><p>Forking Ocean Market</p></figcaption></figure>
So youve got a fully functioning marketplace at this point, which is pretty cool. But it doesnt really look like your marketplace. Right now, its still just a clone of Ocean Market - the same branding, name, logo, etc. The next few steps focus on personalizing your marketplace.

View File

@ -42,7 +42,7 @@ Additionally, in supporting the discovery process, middleware components come in
Here, the ocean comes alive with a vibrant ecosystem of dApps, marketplaces, and more. This layer hosts a variety of user-friendly interfaces, applications, and tools, inviting data scientists and curious explorers alike to access, explore, and contribute to the ocean's treasures.
Prominently featured within this layer is [Ocean Market](../../user-guides/using-ocean-market.md), a hub where data enthusiasts and industry stakeholders converge to discover, trade, and unlock the inherent value of data assets. Beyond Ocean Market, the Application Layer hosts a diverse ecosystem of specialized applications and marketplaces, each catering to unique use cases and industries. Empowered by the capabilities of Ocean Protocol, these applications facilitate advanced data exploration, analytics, and collaborative ventures, revolutionizing the way data is accessed, shared, and monetized.
Prominently featured within this layer is [Ocean Market](https://market.oceanprotocol.com), a hub where data enthusiasts and industry stakeholders converge to discover, trade, and unlock the inherent value of data assets. Beyond Ocean Market, the Application Layer hosts a diverse ecosystem of specialized applications and marketplaces, each catering to unique use cases and industries. Empowered by the capabilities of Ocean Protocol, these applications facilitate advanced data exploration, analytics, and collaborative ventures, revolutionizing the way data is accessed, shared, and monetized.
### Layer 4: The Friendly Wallets

View File

@ -185,4 +185,4 @@ To make the most of these pricing models, you can rely on user-friendly librarie
With Ocean.js, you can use the [createFRE() ](../ocean.js/publish.md)function to effortlessly deploy a data NFT (non-fungible token) and datatoken with a fixed-rate exchange pricing model. Similarly, in Ocean.py, the [create\_url\_asset()](../../data-scientists/ocean.py/publish-flow.md#create-an-asset--pricing-schema-simultaneously) function allows you to create an asset with fixed pricing. These libraries simplify the process of interacting with Ocean Protocol, managing pricing, and handling asset creation.
By taking advantage of Ocean Protocol's pricing options and leveraging the capabilities of [Ocean.js](../ocean.js/README.md) and [Ocean.py](../../data-scientists/ocean.py/README.md) (or by using the [Market](../../user-guides/using-ocean-market.md)), you can effectively monetize your data assets while ensuring transparent and seamless access for data consumers.
By taking advantage of Ocean Protocol's pricing options and leveraging the capabilities of [Ocean.js](../ocean.js/README.md) and [Ocean.py](../../data-scientists/ocean.py/README.md) (or by using the [Market](https://market.oceanprotocol.com)), you can effectively monetize your data assets while ensuring transparent and seamless access for data consumers.

View File

@ -1,56 +0,0 @@
---
description: >-
Use these steps to reveal the information contained within an asset's DID and
list the buyers of a datatoken
---
# Retrieve datatoken/data NFT addresses & Chain ID
### How to find the network, datatoken address, and data NFT address from an Ocean Market link?
If you are given an Ocean Market link, then the network and datatoken address for the asset is visible on the Ocean Market webpage. For example, given this asset's Ocean Market link: [https://odc.oceanprotocol.com/asset/did:op:1b26eda361c6b6d307c8a139c4aaf36aa74411215c31b751cad42e59881f92c1](https://odc.oceanprotocol.com/asset/did:op:1b26eda361c6b6d307c8a139c4aaf36aa74411215c31b751cad42e59881f92c1) the webpage shows that this asset is hosted on the Mumbai network, and one simply clicks the datatoken's hyperlink to reveal the datatoken's address as shown in the screenshot below:
<figure><img src="../.gitbook/assets/market/marketplace_data.jpg" alt="" width="563"><figcaption><p>See the Network and Datatoken Address for an Ocean Market asset by visiting the asset's Ocean Market page.</p></figcaption></figure>
#### More Detailed Info:
You can access all the information for the Ocean Market asset also by **enabling Debug mode**. To do this, follow these steps:
**Step 1** - Click the Settings button in the top right corner of the Ocean Market
<figure><img src="../.gitbook/assets/market/Click-Settings.png" alt=""><figcaption><p>Click the Settings button</p></figcaption></figure>
**Step 2** - Check the Activate Debug Mode box in the dropdown menu
<figure><img src="../.gitbook/assets/market/Check-Debug-Mode.png" alt=""><figcaption><p>Check 'Active Debug Mode'</p></figcaption></figure>
**Step 3** - Go to the page for the asset you would like to examine, and scroll through the DDO information to find the NFT address, datatoken address, chain ID, and other information.
<figure><img src="../.gitbook/assets/market/Scroll-DDO-Info.png" alt=""><figcaption></figcaption></figure>
### How to use Aquarius to find the chainID and datatoken address from a DID?
If you know the DID:op but you don't know the source link, then you can use Ocean Aquarius to resolve the metadata for the DID:op to find the `chainId`+ `datatoken address` of the asset. Simply enter in your browser "[https://v4.aquarius.oceanprotocol.com/api/aquarius/assets/ddo/](https://v4.aquarius.oceanprotocol.com/api/aquarius/assets/ddo/did:op:1b26eda361c6b6d307c8a139c4aaf36aa74411215c31b751cad42e59881f92c1)\<your did:op:XXX>" to fetch the metadata.
For example, for the following DID:op: "did:op:1b26eda361c6b6d307c8a139c4aaf36aa74411215c31b751cad42e59881f92c1" the Ocean Aquarius URL can be modified to add the DID:op and resolve its metadata. Simply add "[https://v4.aquarius.oceanprotocol.com/api/aquarius/assets/ddo/](https://v4.aquarius.oceanprotocol.com/api/aquarius/assets/ddo/did:op:1b26eda361c6b6d307c8a139c4aaf36aa74411215c31b751cad42e59881f92c1)" to the beginning of the DID:op and enter the link in your browser like this: [https://v4.aquarius.oceanprotocol.com/api/aquarius/assets/ddo/did:op:1b26eda361c6b6d307c8a139c4aaf36aa74411215c31b751cad42e59881f92c1](https://v4.aquarius.oceanprotocol.com/api/aquarius/assets/ddo/did:op:1b26eda361c6b6d307c8a139c4aaf36aa74411215c31b751cad42e59881f92c1)
<figure><img src="../.gitbook/assets/market/network-and-datatoken-address.png" alt=""><figcaption><p>The metadata printout for this DID:op with the network's Chain ID and datatoken address circled in red</p></figcaption></figure>
Here are the networks and their corresponding chain IDs:
```json
"mumbai: 80001"
"polygon: 137"
"bsc: 56"
"energyweb: 246"
"moonriver: 1285"
"mainnet: 1"
"polygonedge: 81001"
"gaiaxtestnet: 2021000"
"alfajores: 44787"
"gen-x-testnet: 100"
"filecointestnet: 3141"
"oasis_saphire_testnet: 23295"
"development: 8996"
```

View File

@ -1,71 +0,0 @@
# Deploying Marketplace
### Prerequisites
* A server for hosting Ocean Marketplace. See [this guide](setup-server.md) on creating a server.
* Obtain API key for wanted network. See [this guide](../developers/obtaining-api-keys-for-blockchain-access.md) for this.
### Push your customized Ocean Market code to your Git repository
In case you customized the Ocean Market using the tutorial from this chapter (link), push your code to a Git repository.
### Create a directory
```bash
mkdir my-marketplace
cd my-marketplace
```
### Create a file with the name \`.env\`
If you already created the .env file as instructed in ...(link to customize the market chapter), you can skip this step, otherwise copy the below content into the \`.env\` file.
{% code title=".env" overflow="wrap" %}
```bash
# Update this value if your Market should use custom Aquarius
NEXT_PUBLIC_METADATACACHE_URI=https://v4.aquarius.oceanprotocol.com
# Provide INFURA project ID from the obtained API key for NEXT_PUBLIC_INFURA_PROJECT_ID
#NEXT_PUBLIC_INFURA_PROJECT_ID="xxx"
#NEXT_PUBLIC_MARKET_FEE_ADDRESS="0xxx"
#NEXT_PUBLIC_PUBLISHER_MARKET_ORDER_FEE="1"
#NEXT_PUBLIC_CONSUME_MARKET_ORDER_FEE="1"
#NEXT_PUBLIC_CONSUME_MARKET_FIXED_SWAP_FEE="1"
#
# ADVANCED SETTINGS
#
# Toggle pricing options presented during price creation
#NEXT_PUBLIC_ALLOW_FIXED_PRICING="true"
#NEXT_PUBLIC_ALLOW_FREE_PRICING="true"
# Privacy Preference Center
#NEXT_PUBLIC_PRIVACY_PREFERENCE_CENTER="true"
```
{% endcode %}
### Create a \`Dockerfile\` file and copy the below content into it.
In the following Dockerfile, replace \<YOUR\_GIT\_REPO\_URL> with the url of your Ocean Market fork repository or use "https://github.com/oceanprotocol/market.git" if you want to deploy the standard image of Ocean Market.
<pre class="language-docker" data-title="Dockerfile"><code class="lang-docker">FROM node:16
<strong>RUN git clone &#x3C;YOUR_GIT_REPO_URL> /usr/app/market
</strong>WORKDIR /usr/app/market
RUN npm ci --legacy-peer-deps
RUN npm run build
EXPOSE 3000
CMD ["npx", "next", "start"]
</code></pre>
### Build a docker image
```bash
docker build . -f Dockerfile -t market:latest
```
### Start the marketplace
```bash
docker start market
```

View File

@ -12,8 +12,6 @@ coverY: 0
**Contents:**
- Basic concepts
- Using wallets
- Using Ocean Market
- C2D in Ocean Market
- Host assets
Let's dive in!
@ -36,28 +34,7 @@ For blockchain beginners
[wallets/metamask-setup.md](wallets/metamask-setup.md)
{% endcontent-ref %}
## Using Ocean Market
{% content-ref url="using-ocean-market.md" %}
[using-ocean-market.md](using-ocean-market.md)
{% endcontent-ref %}
{% content-ref url="publish-data-nfts.md" %}
[publish-data-nfts.md](publish-data-nfts.md)
{% endcontent-ref %}
{% content-ref url="buy-data-nfts.md" %}
[buy-data-nfts.md](buy-data-nfts.md)
{% endcontent-ref %}
## C2D in Ocean Market
{% content-ref url="compute-to-data/" %}
[compute-to-data](compute-to-data/README.md)
{% endcontent-ref %}
## Host Assets
## Data Storage
{% content-ref url="asset-hosting/" %}
[asset-hosting](asset-hosting/README.md)

View File

@ -1,24 +0,0 @@
---
description: >-
How to sell compute jobs on your datasets while keeping your data and
algorithms private
---
# Sell NFT Computations (Compute-to-Data)
### Introducing, The Problem
{% embed url="https://media0.giphy.com/media/v1.Y2lkPTc5MGI3NjExNjNmMTc3MjFjNTg2MjQwZTQyY2VkNzFiNjk1YzM5ZmJkM2NjMzA4ZiZlcD12MV9pbnRlcm5hbF9naWZzX2dpZklkJmN0PWc/17FxSFyYNOgThnonDK/giphy.gif" fullWidth="false" %}
**Anyone could buy your data on the Ocean Market and then publicly share it all over the internet.** Pretty scary, right? But what if there was a way that buyers could access valuable insights from your data and algorithms without actually \*seeing\* the data or algorithms themselves? We have a solution for that!
Enter, **Compute-to-Data** (also lovingly called C2D 🥰). Ocean Protocol's C2D feature enables you to monetize the OUTPUT of compute jobs on your datasets without revealing the contents of the data/algorithms themselves. Let's dive in how!
## How to Compute-to-Data 💃
You will need to accomplish **3 main steps** in establishing a compute-to-data flow: [create an algorithm](make-a-boss-c2d-algorithm.md) that's compatible with C2D, [publish your C2D-specific algorithm NFT](publish-a-c2d-algorithm-nft.md), then [publish your data NFT with C2D configurations](publish-a-c2d-data-nft.md) allowing the algorithm to compute on it. That's it! Then you'll be able to sell compute jobs 🤩 Read the steps in this section's three subpages to create & sell a compute job from start to finish. 💪😃
Or you could watch this video tutorial about it below:
{% embed url="https://youtu.be/2AF9mkqlf5Y" %}

View File

@ -1,98 +0,0 @@
---
description: >-
How to construct the beginnings of an awesome algorithm for C2D compute jobs
on datasets
---
# Make a Boss C2D Algorithm
<figure><img src="../../.gitbook/assets/gif/like-a-boss.gif" alt=""><figcaption></figcaption></figure>
The beginning of any algorithm for Compute-to-Data starts by loading the dataset correctly. Read on, anon 👨🏻‍💻
### Open the local dataset file
This code goes at the top of your algorithm file for your algorithm NFT asset to use with Compute-to-Data. It references your data NFT asset file on the Docker container you selected.
{% tabs %}
{% tab title="Python" %}
```python
import csv
import json
import os
def get_input(local=False):
dids = os.getenv("DIDS", None)
if not dids:
print("No DIDs found in the environment. Aborting.")
return
dids = json.loads(dids)
for did in dids:
filename = f"data/inputs/{did}/0" # 0 for metadata service
print(f"Reading asset file {filename}.")
return filename
# Get the input filename using the get_input function
input_filename = get_input()
if not input_filename:
# No input filename returned
exit()
# Open the file & run your code
with open(input_filename, 'r') as file:
# Read the CSV file
csv_reader = csv.DictReader(file)
<YOUR CODE GOES HERE>
```
{% endtab %}
{% tab title="Javascript" %}
```javascript
const fs = require("fs");
var input_folder = "/data/inputs";
var output_folder = "/data/outputs";
async function processfolder(Path) {
var files = fs.readdirSync(Path);
for (var i =0; i < files.length; i++) {
var file = files[i];
var fullpath = Path + "/" + file;
if (fs.statSync(fullpath).isDirectory()) {
await processfolder(fullpath);
} else {
<YOUR CODE GOES HERE>
}
}
}
<YOUR CODE & FUNCTION DEFINITIONS GO HERE>
// Open the file & run your code
processfolder(input_folder);
```
{% endtab %}
{% endtabs %}
**Note:** Here are the following Python libraries that you can use in your code:
```python
// Python modules
numpy==1.16.3
pandas==0.24.2
python-dateutil==2.8.0
pytz==2019.1
six==1.12.0
sklearn
xlrd == 1.2.0
openpyxl >= 3.0.3
wheel
matplotlib
```

View File

@ -1,63 +0,0 @@
---
description: How to publish a C2D algorithm NFT on the Ocean Market
---
# Publish a C2D Algorithm NFT
<figure><img src="../../.gitbook/assets/gif/the-algorithm.gif" alt=""><figcaption><p>You're an algorithm guru after all!</p></figcaption></figure>
### Publish Your Algorithm NFT
#### Step 1 - Navigate to the Ocean Market
* Go to [https://market.oceanprotocol.com](https://market.oceanprotocol.com)
#### Step 2 - Connect your wallet
* Click the top right Connect Wallet button to connect your self-custody wallet to the Ocean Market
<figure><img src="../../.gitbook/assets/market/connect-wallet.png" alt=""><figcaption><p>Connect your self-custody wallet</p></figcaption></figure>
#### Step 3 - Click the Publish link in the top left corner of the page
* Click the Publish link
<figure><img src="../../.gitbook/assets/c2d/publish.png" alt=""><figcaption><p>Navigate to the Publish page</p></figcaption></figure>
#### Step 4 - Enter the metadata
* Enter the metadata for your algorithm NFT paying special attention to select the Algorithm asset type button:
<figure><img src="../../.gitbook/assets/c2d/algo-asset.png" alt=""><figcaption><p>Be sure to select the Algorithm asset type</p></figcaption></figure>
* Select the appropriate Docker image to run your code - most algorithms are written in Javascript or Python, so you can use either of these Docker images or your own custom image!
<figure><img src="../../.gitbook/assets/c2d/docker-image.png" alt=""><figcaption><p>Select the appropriate Docker image for your algorithm type</p></figcaption></figure>
#### Step 5 - Enter the Access information
* Make sure to keep this option checked! ✅
<figure><img src="../../.gitbook/assets/c2d/algorithm-privacy.png" alt=""><figcaption><p>Keep this option checked for Compute-to-Data</p></figcaption></figure>
#### Step 6 - Set a price, Fixed or Free, for your algorithm
* It is recommended that you set a fixed price since the price that you choose for your algorithm will be charged any time that someone selects to run your algorithm on a dataset, including datasets that aren't yours!
<figure><img src="../../.gitbook/assets/c2d/Set-a-price-algo.png" alt=""><figcaption><p>Set a price for your C2D algorithm NFT</p></figcaption></figure>
#### Step 7 - Approve the preview
* Your preview should look like the following:
<figure><img src="../../.gitbook/assets/c2d/preview-publish.png" alt="" width="375"><figcaption></figcaption></figure>
#### Step 8 - Submit the transactions
* Click the pink Submit button at the bottom of the page and sign the two transactions with your wallet. You'll have to pay for gas when you sign to publish your algorithm asset.
<figure><img src="../../.gitbook/assets/c2d/Sign-transactions.png" alt=""><figcaption><p>Sign and pay gas for 2 transactions on the final publishing step</p></figcaption></figure>
#### Congratulations on publishing your algorithm!
* On to the next step -> [Publish a C2D Data NFT](publish-a-c2d-data-nft.md)

View File

@ -1,91 +0,0 @@
---
description: How to publish a data NFT with C2D configurations
---
# Publish a C2D Data NFT
<figure><img src="../../.gitbook/assets/gif/talk-data-to-me.gif" alt="" width="375"><figcaption></figcaption></figure>
#### Step 1 - Navigate to the Ocean Market
* Go to [https://market.oceanprotocol.com](https://market.oceanprotocol.com)
#### Step 2 - Connect your wallet
* Click the top right Connect Wallet button to connect your self-custody wallet to the Ocean Market
<figure><img src="../../.gitbook/assets/market/connect-wallet.png" alt=""><figcaption><p>Connect your self-custody wallet</p></figcaption></figure>
#### Step 3 - Click the Publish link in the top left corner of the page
* Click the Publish link
<figure><img src="../../.gitbook/assets/c2d/publish.png" alt=""><figcaption><p>Navigate to the Publish page</p></figcaption></figure>
#### Step 4 - Enter the metadata
* Enter the metadata for your data NFT keeping the Dataset asset type selected by default:
<figure><img src="../../.gitbook/assets/c2d/dataset-default-option.png" alt=""><figcaption><p>Keep the default Dataset Asset Type selected</p></figcaption></figure>
#### Step 5 - Enter the Access information
* You must select the Compute access type in this step!
<figure><img src="../../.gitbook/assets/c2d/dataset-compute-option.png" alt=""><figcaption><p>Make sure that you select Compute access type</p></figcaption></figure>
#### Step 6 - Set a price, Fixed or Free, for your dataset
* Toggle the tab to decide whether you want to set a fixed or free price for your dataset.
<figure><img src="../../.gitbook/assets/c2d/Set-a-price-algo.png" alt=""><figcaption><p>Set a price for your C2D data NFT</p></figcaption></figure>
#### Step 7 - Approve the preview
* Your preview should look like the following (this will change soon!):
<figure><img src="../../.gitbook/assets/c2d/data-nft-c2d-preview.png" alt="" width="375"><figcaption></figcaption></figure>
#### Step 8 - Submit the transactions
* Click the pink Submit button at the bottom of the page and sign the two transactions with your wallet. You'll have to pay for gas when you sign to publish your algorithm asset.
<figure><img src="../../.gitbook/assets/c2d/Sign-transactions.png" alt=""><figcaption><p>Sign and pay gas for 2 transactions on the final publishing step</p></figcaption></figure>
**Ok, you've published a Data NFT that is \*almost\* ready for Compute-to-Data. Just a few tiny steps left and you're done!**
#### Step 9 - Edit the asset (yes, again!)
* On the webpage for your Data NFT, you need to click the Edit Asset link to change the C2D settings.
<figure><img src="../../.gitbook/assets/c2d/edit-asset-link.png" alt="" width="563"><figcaption><p>Click the Edit Asset link</p></figcaption></figure>
#### Step 10 - Edit the Compute settings
* You must select the Edit Compute Settings button to add your algorithm to the data NFT for computation.
<figure><img src="../../.gitbook/assets/c2d/edit-compute-settings.png" alt=""><figcaption><p>Select the Edit Compute Settings tab button</p></figcaption></figure>
* Then, search for your algorithm in the Selected algorithms search bar and check the box next to it to add it as an algorithm able to compute on the dataset.
<figure><img src="../../.gitbook/assets/c2d/select-algorithm-for-compute.png" alt=""><figcaption><p>Search for and select your algorithm to compute on your dataset</p></figcaption></figure>
#### Step 11 - Submit the transactions
* Click the pink Submit button at the bottom of the page and sign all the transactions.
<figure><img src="../../.gitbook/assets/c2d/Submit-compute-settings.png" alt=""><figcaption><p>Click the Submit button to finalize the transaction</p></figcaption></figure>
#### Congratulations! You have fully finished the C2D flow. Check your work by verifying that your algorithm appears on the data NFT's page, like in the following example:
<figure><img src="../../.gitbook/assets/c2d/double-check-work.png" alt="" width="375"><figcaption><p>Your algorithm should appear now on the data NFT's page!</p></figcaption></figure>
If you would like to run the compute job, then simply click the radio button to the left of the algorithm's name and click Buy Compute Job.
<figure><img src="../../.gitbook/assets/c2d/buy-compute-job.png" alt="" width="375"><figcaption><p>Buy the compute job to check your work!</p></figcaption></figure>
The output of your algorithm's computation on the dataset will appear in the Algorithm.log output. Voilá!
#### Now do a little dance, because you're done!
{% embed url="https://media4.giphy.com/media/CxhWJeIicfOEynsEn6/giphy.gif?cid=ecf05e478eb1zzixmsjwbwx37a0d4e1096812j513crzr18j&ct=g&ep=v1_gifs_search&rid=giphy.gif" %}

View File

@ -1,30 +0,0 @@
---
description: Buy, mint, and sell all sorts of data on the Ocean Market
---
# Guide to the Ocean Market
<figure><img src="../.gitbook/assets/gif/shopping-minions.gif" alt=""><figcaption><p>Retail therapy mood!</p></figcaption></figure>
### What is the [Ocean Market](https://market.oceanprotocol.com/)? 🛒
The Ocean Market is a place for buyers + sellers of top-notch data and algorithms to exchange goods. The market also gives you easy-to-use publishing and purchasing tools to monetize your intellectual property. 🤑 What's not to love? 💕
#### **You can:**
* Buy access to unique data, algorithms, and compute jobs. 🛍️
* Tokenize & monetize your intellectual property through blockchain technology. 💪
#### **Learn to:**
* [Publish an NFT](publish-data-nfts.md)
* [Download NFT Assets](buy-data-nfts.md)
* [Host Your Assets](asset-hosting/README.md)
#### Getting Basic 💁‍♀️
**If you are new to web3** and blockchain technologies then we suggest you first get familiar with some Web3 basics:
* [Wallet Basics](../user-guides/wallets/README.md) 👛
* [Set Up MetaMask](../user-guides/wallets/metamask-setup.md) 🦊
* [Manage Your OCEAN](../user-guides/wallets-and-ocean.md) 🪙