Skip to content

Commit 1d6b715

Browse files
Merge pull request #7 from projectNEWM/candidate-for-v1.0.2
updating just the readme on this candidate
2 parents 6e74569 + 5338dc0 commit 1d6b715

File tree

2 files changed

+12
-16
lines changed

2 files changed

+12
-16
lines changed

README.md

Lines changed: 11 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,22 @@
11
# Project NEWM's Fractional Minting Contract
22

3-
Fractionalization refers to the process of dividing the ownership of streaming rights of a piece of art into 100 million pieces. The resulting fractions are given to the artist, who has the freedom to sell or trade them as they wish, or can be sold on the NEWM marketplace with the proceeds going directly to the artist.
3+
Fractionalization refers to the process of dividing the ownership of the streaming rights of a piece of art into 100 million pieces. The resulting fractionals are given to the artist, who has the freedom to sell or trade them as they wish, or they can be sold on the NEWM Market, with the proceeds going directly to the artist.
44

55
## Getting Aiken
66

7-
Please refer to the official documentation for [installation instructions](https://github.com/aiken-lang/aiken?tab=readme-ov-file#installation).
7+
Please refer to the official documentation for [installation instructions](https://aiken-lang.org/installation-instructions).
88

99
### Assist library
1010

11-
Project NEWM uses the Assist libray, a library of specialized Aiken functions for smart contracts on Cardano.
12-
13-
https://github.com/logicalmechanism/assist
14-
15-
Documentation for Assist can be view [here](https://www.logicalmechanism.io/docs/index.html).
11+
Project NEWM uses the [Assist Library](https://github.com/logicalmechanism/assist), collection of specialized Aiken functions designed for quick smart contracts development on Cardano. Documentation for the Assist Library can be viewed [here](https://www.logicalmechanism.io/docs/index.html).
1612

1713
## Build
1814

19-
Set up the `config.json` file with the correct starter token information, NEWM hot key, and pool id. These values are used inside the `complete_build.sh` script to compile and apply the contracts. The build script will auto generate the correct datums and redeemers.
15+
Set up the `config.json` file with the correct starter token information, NEWM hot key, and pool ID. These values are used inside the `complete_build.sh` script to compile the contracts. The build script will automatically generate the correct datums and redeemers required for the happy path.
2016

2117
## Happy Path Setup
2218

23-
The `scripts` folder assumes there will be test wallets inside the `wallets`folder.
19+
The `scripts` folder assumes there will be test wallets inside the `wallets`folder. Use this code block below to auto-generate the required wallets used on the happy path.
2420

2521
```bash
2622
./create_wallet.sh wallets/artist-wallet
@@ -34,16 +30,16 @@ The `scripts` folder assumes there will be test wallets inside the `wallets`fold
3430
./create_wallet.sh wallets/starter-wallet
3531
```
3632

37-
First create the reference scripts with `00_createScriptReferences.sh` found in the scripts folder. This script will use funds held on the reference-wallet to store the smart contracts on UTxOs.
33+
First, create the reference scripts with `00_createScriptReferences.sh` found in the scripts folder. This script will use funds held in the reference-wallet to store the smart contracts on UTxOs.
3834

39-
Next, we need to create the data reference UTxO using `01_createReferenceUTxO.sh` script inside the `reference` subfolder. This script will use the the starter-wallet to send the starter token defined in `config.json` into the data reference contract. The starter token acts like a pointer for the other contracts to correctly identify the true reference data. The `reference` folder contains test scripts for updating data on the data UTxO. These scripts require a valid n-out-of-m multisig with the set of keeper wallets held on a datum in the data reference contract. The `keeper*-wallet` do not need funds as they are just signing the transaction. The update scripts assume the `newm-wallet` will pay for the transaction fees.
35+
Next, we need to create the data reference UTxO using the `01_createReferenceUTxO.sh` script inside the `reference` subfolder. This script will use the starter-wallet to send the starter token defined in `config.json` into the data reference contract. The starter token acts as a pointer for the other contracts to correctly identify the true reference data. The `reference` folder contains test scripts for updating data on the data UTxO. These scripts require a valid n-out-of-m multisig with the set of keeper wallets held on a datum in the data reference contract. The `keeper*-wallet` wallets do not need funds as they are just signing the transaction. The update scripts assume the `newm-wallet` will pay for the transaction fees.
4036

4137
After the reference data contract has been set up, register and delegate the stake key inside the `staking` subfolder. The staking contract will delegate the ada value inside the cip68 storage and sale contract to a specific pool defined in the `config.json` file. The test scripts in the `staking` folder assume that the `newm-wallet` will pay for the transaction fee.
4238

43-
At this point tokens may be minted and the sale contract can be used.
39+
After the reference data contract has been set up, register and delegate the staking contract inside the `staking` subfolder. The staking contract will delegate the ADA value inside the storage contract to a specific pool defined in the `config.json` file. The test scripts in the `staking` folder assume that the `newm-wallet` will pay for the transaction fee.
4440

45-
## Mint
41+
At this point fractional tokens may be minted.
4642

47-
Inside the `mint` subfolder are files for managing minting and burning tokens. A pair of tokens is minted each time the mint validator is executed, 1 reference token is sent to the cip68 storage contract and 100 million fractions are sent to the sale contract. The sale parameters are currently generated inside the `01_mintTokens.sh` script. Update the sale data by updating that script.
43+
## Minting
4844

49-
During minting, both tokens must exist inside the same tx but burning allows either just some amount of fractions, the reference, or both to be burned. A burning validation requires the valid multisig defined in the data reference contract.
45+
Inside the `mint` subfolder are files for managing minting and burning fractional tokens. A pair of tokens are minted each time the mint validator is executed: 1 reference token is sent to the storage contract and 100 million fractionals are sent to the artist-wallet. During minting, both tokens must exist inside the same transaction, but burning allows either just some amount of fractionals, the reference, or both to be burned. Burning validation requires the valid multisig defined in the data reference contract.

aiken.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name = "projectNEWM/newm-minter"
2-
version = "1.0.1"
2+
version = "1.0.2"
33
compiler = "v1.0.29-alpha"
44
plutus = "v2"
55
license = "GPL-3.0-or-later"

0 commit comments

Comments
 (0)