Skip to content

Commit

Permalink
Merge pull request #529 from Chia-Network/academy-primitives
Browse files Browse the repository at this point in the history
academy primitives
  • Loading branch information
ItsKestrel authored Apr 1, 2024
2 parents 0675121 + 642271e commit 33269c4
Show file tree
Hide file tree
Showing 10 changed files with 495 additions and 0 deletions.
70 changes: 70 additions & 0 deletions docs/academy/academy-intro/academy-home.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,11 @@ import ChallengesPlotFilters from '@site/static/img/academy/challenges-plot-filt
import Pools from '@site/static/img/academy/pools.png';
import CreatingYourFirstPlot from '@site/static/img/academy/Intro2Farming.png';

import PrimitivesOverview from '@site/static/img/academy/primitives.png';
import NFTs from '@site/static/img/academy/nft.png';
import CATs from '@site/static/img/academy/cat.png';
import DIDs from '@site/static/img/academy/did.png';

Welcome to Chia Academy, the scholarly hub for delving deep into Chia blockchain technology. In an age characterized by rapid digital transformation, this institution offers a comprehensive exploration of the Chia blockchain, dissecting its technical intricacies, real-world applications, and the nuances of its secure data handling. As a Chia Academy student, you will dive into the core concepts and functionalities of the Chia blockchain.

## Courses
Expand Down Expand Up @@ -236,6 +241,71 @@ Below, you'll find several curated courses covering everything from the basics o

---

#### Primitives

<section class="carousel">
<c-ol class="carousel-inner">
<c-li class="carousel-item">
<div class="card-demo">
<div class="card">
<div class="card__image">
<img src={PrimitivesOverview} alt='Primitives Overview' />
</div>
<div class="card__footer">
<a href='https://docs.chia.net/primitives-overview'>
<button class="button button--primary button--block">Learn</button>
</a>
</div>
</div>
</div>
</c-li>
<c-li class="carousel-item">
<div class="card-demo">
<div class="card">
<div class="card__image">
<img src={NFTs} alt='NFTs' />
</div>
<div class="card__footer">
<a href='https://docs.chia.net/academy-nft'>
<button class="button button--primary button--block">Learn</button>
</a>
</div>
</div>
</div>
</c-li>
<c-li class="carousel-item">
<div class="card-demo">
<div class="card">
<div class="card__image">
<img src={DIDs} alt='DIDs' />
</div>
<div class="card__footer">
<a href='https://docs.chia.net/academy-did'>
<button class="button button--primary button--block">Learn</button>
</a>
</div>
</div>
</div>
</c-li>
<c-li class="carousel-item">
<div class="card-demo">
<div class="card">
<div class="card__image">
<img src={CATs} alt='CATs' />
</div>
<div class="card__footer">
<a href='https://docs.chia.net/academy-cat'>
<button class="button button--primary button--block">Learn</button>
</a>
</div>
</div>
</div>
</c-li>
</c-ol>
</section>

---

## How the courses work

Check out the [Academy Overview](https://docs.chia.net/academy-overview) page for a breakdown on how the courses are presented and organized.
97 changes: 97 additions & 0 deletions docs/academy/primitives/academy-cat.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
---
title: CATs
slug: /academy-cat
---

In this lesson, we talk about Chia Asset Tokens, and how they can be used.

## Learning objectives

- **Issuance**: Understand the basic types of issuance rules.

---

## Content

<div class="videoWrapper">
<iframe width="100%" height="504" src="https://www.youtube.com/embed/XJbpmgbEYpM" frameborder="0" allowfullscreen="allowfullscreen"></iframe>
</div>

---

## Script

<details>

<summary> Expand for the full script </summary>

0:00
A Chia Asset Token, or CAT, is a type of fungible token that can be minted from XCH. These tokens can take many different forms from a separate form of currency, to representing a collection of identical assets.

0:20
A CAT can have different properties, determined by it's TAIL, or Token Asset Issuance Limiter. This TAIL determines how the CAT is issued, how it can be subsequently spent, and whether it can be melted back into XCH.

0:40
A CAT wraps an inner puzzle that controls ownership of the coin. This is typically the standard transaction puzzle to facilitate sending the CATs to a Chia wallet. For the TAIL, there are 2 standard puzzles, Single-Issuance, and Multi-Issuance.
The Single-Issuance TAIL is more restrictive and is designed to make sure the supply is maintained.

1:00
With this TAIL, only the CATs minted at creation are valid, and they cannot be melted back into XCH.
The Multi-Issuance TAIL allows more identical CATs to be issued in the future, as long as the original issuance key is used. This is useful if the total number of tokens needed is unknown.

1:20
While these are the standard puzzles, a TAIL can be customized to allow any desired behavior.

</details>

---

## Common gotchas

- **Fungibility:** CATs are fungible, meaning they can be exchanged for each other at will. There are no editions, lot numbers, or anything else that would differentiate two CATs from the same issuance.
- **Melting:** Melting a CAT (if allowed by the TAIL) converts the underlying value of the CAT back to XCH which can then be used for other coins. A CAT can only ever be melted into the same amount of XCH used to create the CAT.

---

## Knowledge check

:::tip Question 1 - CATs vs. NFTs

True or False; A CAT is a special type of NFT.

:::

<details>

<summary> Answer (expand when ready to see the answer) </summary>

False. A CAT is fungible, whereas an NFT is non-fungible and represents a unique item.

</details>

:::tip Question 2 - TAILs

What are the standard types of TAILs?

:::

<details>

<summary> Answer (expand when ready to see the answer) </summary>

Single-Issuance and Multi-Issuance.

</details>

---

## Additional resources

### Links

- More about [primitives](https://docs.chia.net/guides/primitives/): guides for each primitive, and how to use them.
- In depth [CAT overview](https://docs.chia.net/guides/cat-creation-tutorial/): describing the CAT standard, and how to issue them.
- Chialisp [detailed documentation](https://chialisp.com/): detailed information on all aspects of chialisp.
- Support [in discord](https://discord.gg/chia): for further support join our discord server and ask in the #chialisp or #support channels.

---
89 changes: 89 additions & 0 deletions docs/academy/primitives/academy-did.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
---
title: DIDs
slug: /academy-did
---

This lesson is an overview of DIDs.

## Learning objectives

- **Identity Ownership**: Understand the differences in data ownership between decentralized and non-decentralized identities.

---

## Content

<div class="videoWrapper">
<iframe width="100%" height="504" src="https://www.youtube.com/embed/Yt0qt8G20X4" frameborder="0" allowfullscreen="allowfullscreen"></iframe>
</div>

---

## Script

<details>

<summary> Expand for the full script </summary>

0:00
DIDs, or decentralized identifiers, provide a way to identify users or organizations in a decentralized way. DIDs can be used as account identifiers.

0:20
For example, someone using a specific service would create a DID associated with that service that they control. They could use this DID to authorize access to the service, and manage assets the service may provide and permissions it may request.

0:40
In non-decentralized environments, the account information is controlled and owned by the service provider. With decentralized identities, the identity and the data associated with it, are controlled and owned by the user. This allows the user to use the DID with many different services and in many different contexts, and control the information associated with it.

</details>

---

## Common gotchas

- **DIDs are NFTs:** DIDs are actually a special type of NFT. This ensures uniqueness and that only one entitiy has control of any one DID.
- **DID limits:** A user can generate many DIDs and associate each one with different services or assets.

---

## Knowledge check

:::tip Question 1 - DID issuance

True or False; A DID is issued by a service provider to identify a user.

:::

<details>

<summary> Answer (expand when ready to see the answer) </summary>

False. The DID is created by the user, and associated with a service provider. This allows the user to use one DID for many different services.

</details>

:::tip Question 2 - DID limits

How many DIDs can a user have?

:::

<details>

<summary> Answer (expand when ready to see the answer) </summary>

There is no practical limit to the number of DIDs a user can create.

</details>

---

## Additional resources

### Links

- More about [primitives](https://docs.chia.net/guides/primitives/): guides for each primitive, and how to use them.
- In depth [DID guide](https://docs.chia.net/guides/nft-intro/): how to create a DID.
- Chialisp [detailed documentation](https://chialisp.com/): detailed information on all aspects of chialisp.
- Support [in discord](https://discord.gg/chia): for further support join our discord server and ask in the #chialisp or #support channels.

---
114 changes: 114 additions & 0 deletions docs/academy/primitives/academy-nft.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
---
title: NFTs
slug: /academy-nft
---

In this lesson, we talk about what an NFT is, and some examples of how it can be used.

## Learning objectives

- **Fungibility**: Understand what makes something fungible.
- **Uses and Value**: Understand the use of NFTs, and what makes something valuable.

---

## Content

<div class="videoWrapper">
<iframe width="100%" height="504" src="https://www.youtube.com/embed/R5ndeLzHtZQ" frameborder="0" allowfullscreen="allowfullscreen"></iframe>
</div>

---

## Script

<details>

<summary> Expand for the full script </summary>

0:00
NFTs, or non-fungible tokens, can be used to provide proof of ownership, handle licenses and royalties, and ensure uniqueness for digital entities and even real-world items.

0:20
Let's start at the basics. An item is non-fungible if it can not be interchanged for another identical item. For example, an original painting, a driver's license, or even a family heirloom. These items are unique and can't be substituted for something of "equal value" since any other item would not have the same properties.

0:40
Since digital items can be inherently duplicated, we need to pair the item with something that isn't. An NFT is a token on the blockchain that represents an item. This item could be physical and the NFT is a sort of registry of ownership on the blockchain, or the item could be digital, with the NFT serving as the non-interchangeable component.

1:00
NFTs can be used to provide ownership provenance, such as the sale and resale of digital art. They can also provide a mechanism of distributing royalties to the original author upon resale.

1:20
NFTs can also provide a method of verifying and transferring more ethereal concepts such as digital memberships and ecosystem specific assets.
It's an important point that just because something is non-fungible, it is not inherently valuable. For example, a family heirloom is non-fungible, and may have emotional value to one person,

1:40
but it does not have true value outside of a specific context. NFTs are a tool that is useful for providing a new way to work with digital items. They do not themselves create value.

</details>

---

## Common gotchas

- **Size Limitations:** Because there is a limit to how large a single transaction can be, it is very rare to have the digital item itself embedded in the NFT. The token will instead contain a reference to the item that is hosted elsewhere.
- **NFTs are Data:** It is common to think of some type of image or art when thinking of NFTs. This is a very limited view. NFTs are essentially data objects that can contain references to other digital assets, or simply be the data object itself. The referenced asset may be a piece of digital art, but it could just as easily be a document, contract, application, etc.

---

## Knowledge check

:::tip Question 1 - Fungibility

What makes something fungible?

:::

<details>

<summary> Answer (expand when ready to see the answer) </summary>

Something is fungibile if it can be easily substituted for another item.

</details>

:::tip Question 2 - Physical vs. Digital

True or False; An NFT can really only represent digital assets.

:::

<details>

<summary> Answer (expand when ready to see the answer) </summary>

False. An NFT can also represent physical assets, and serves as a registry on the blockchain.

</details>

:::tip Question 3 - Value

True or False; Minting and NFT makes the underlying asset valuable.

:::

<details>

<summary> Answer (expand when ready to see the answer) </summary>

False. Simply being an NFT does not make it valuable. NFTs are a tool to handle digital assets in a new way.

</details>

---

## Additional resources

### Links

- More about [primitives](https://docs.chia.net/guides/primitives/): guides for each primitive, and how to use them.
- In depth [NFT guide](https://docs.chia.net/guides/nft-intro/): how to mint an NFT.
- Chialisp [detailed documentation](https://chialisp.com/): detailed information on all aspects of chialisp.
- Support [in discord](https://discord.gg/chia): for further support join our discord server and ask in the #chialisp or #support channels.

---
Loading

0 comments on commit 33269c4

Please sign in to comment.