Skip to content

Commit

Permalink
fix from merge with tezos.com
Browse files Browse the repository at this point in the history
  • Loading branch information
zamrokk committed Oct 13, 2023
1 parent d193c81 commit 9820089
Showing 1 changed file with 22 additions and 20 deletions.
42 changes: 22 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
## :round_pushpin: [See Github version and full code here](https://github.com/marigold-dev/training-nft-4)
---
id: build-an-nft-marketplace
title: NFT Marketplace Part 4
lastUpdated: 11th October 2023
---

# training-nft-4

Training n°4 for NFT marketplace
## Introduction

![https://france-vins.eu/wp-content/uploads/2018/10/les-meilleures-caves-%C3%A0-vin-image.jpg](https://france-vins.eu/wp-content/uploads/2018/10/les-meilleures-caves-%C3%A0-vin-image.jpg)

Expand Down Expand Up @@ -32,9 +34,9 @@ Point to the new template changing the first import line of `nft.jsligo` file to
#import "@ligo/fa/lib/fa2/asset/multi_asset.impl.jsligo" "FA2Impl"
```

It means you will change the namespace from `SingleAsset` to `MultiAsset` everywhere _(like this you are sure to use the correct library)_
It means you need to change the namespace from `SingleAsset` to `MultiAsset` everywhere _(like this you are sure to use the correct library)_

You will re-introduce the `token_id` as there are several collections now.
You have to re-introduce the `token_id` as there are several collections now.

Remove `totalSupply` and add two extra key sets `owner_token_ids` and `token_ids`

Expand Down Expand Up @@ -251,7 +253,7 @@ taq deploy nft.tz -e "testing"

**The smart contract _(backend)_ is finished**

## :performing_arts: NFT Marketplace front
## NFT Marketplace front

Generate Typescript classes and go to the frontend to run the server

Expand Down Expand Up @@ -1411,51 +1413,51 @@ export default function WineCataloguePage() {

## Let's play

- Connect with your wallet and choose `alice` account _(or one of the administrators you set on the smart contract earlier)_. You are redirected to the Administration/mint page as there is no NFT minted yet
- Connect with your wallet and choose **alice** account _(or one of the administrators you set on the smart contract earlier)_. You are redirected to the Administration/mint page as there is no NFT minted yet
- Create an asset, for example :
- `name`: Saint Emilion - Franc la Rose
- `symbol`: SEMIL
- `description`: Grand cru 2007
- `quantity`: 1000
- Click on `Upload an image` and select a bottle picture on your computer
- Click on **Upload an image** and select a bottle picture on your computer
- Click on the Mint button

![minting.png](./doc/minting.png)
![minting.png](./images/minting.png)

Your picture will be pushed to IPFS and will be displayed, then your wallet will ask you to sign the `mint` operation.
Your picture is pushed to IPFS and is displayed, then your wallet asks you to sign the `mint` operation.

- Confirm operation
- Wait less than 1 minute to get the confirmation notification, the page will be automatically refreshed
- Wait less than 1 minute to get the confirmation notification, the page is automatically refreshed

![minted.png](./doc/minted.png)
![minted_part4.png](/images/minted_part4.png)

Now you can see the `Trading` menu and the `Bottle offers` sub-menu
Now you can see the **Trading** menu and the **Bottle offers** sub-menu

Click on the sub-menu entry

You are the owner of this bottle so you can create an offer on it

- Enter a quantity
- Enter a price offer
- Click on `SELL` button
- Click on **SELL** button
- Wait a bit for the confirmation, then once automatically refreshed you have an offer attached to your NFT!

![sell.png](./doc/sell.png)
![sell_part4.png](/images/sell_part4.png)

For buying,

- Disconnect from your user and connect with another account _(who has enough XTZ to buy at least 1 bottle)_
- The buyer will see that Alice is selling some bottles from the unique collection
- Buy some bottles while clicking on the `BUY` button
- Buy some bottles while clicking on the **BUY** button
- Wait for the confirmation, then the offer is updated on the market _(depending on how many bottles you bought)_
- Click on the `bottle offers` submenu
- Click on the **bottle offers** submenu
- You are now the owner of some bottles, you can resell a part of it at your own price, etc ...

![buy.png](./doc/buy.png)
![buy_part4.png](/images/buy_part4.png)

To add more collections, go to the Mint page and repeat the process.

# :palm_tree: Conclusion :sun_with_face:
## Conclusion

You are able to use any NFT template from the Ligo library.

Expand Down

0 comments on commit 9820089

Please sign in to comment.