From 69d7743997fe2887ed234fd9f193816bbc9f9c65 Mon Sep 17 00:00:00 2001 From: Hassan Ali <121270268+hassanaly18@users.noreply.github.com> Date: Fri, 23 Aug 2024 19:07:00 +0000 Subject: [PATCH] challenge completed --- algokit-utils-py | 1 + main.py | 79 ++++++++++++++++++++++++++++++++++++++++++++++++ pyproject.toml | 14 +++++++++ 3 files changed, 94 insertions(+) create mode 160000 algokit-utils-py create mode 100644 pyproject.toml diff --git a/algokit-utils-py b/algokit-utils-py new file mode 160000 index 00000000..816b548d --- /dev/null +++ b/algokit-utils-py @@ -0,0 +1 @@ +Subproject commit 816b548da68b76dcdd53788db3a47736d8646668 diff --git a/main.py b/main.py index 8b137891..76129dbd 100644 --- a/main.py +++ b/main.py @@ -1 +1,80 @@ +from algokit_utils.beta.algorand_client import( + AlgorandClient, + AssetCreateParams, + AssetOptInParams, + PayParams, + AssetTransferParams +) +algorand=AlgorandClient.default_local_net() +dispenser=algorand.account.dispenser() +# print("Dispenser: ", dispenser.address) + +maker=algorand.account.random() +# print("maker: ", maker.address) + +# print(algorand.account.get_information(maker.address)) + +algorand.send.payment( + PayParams( + sender=dispenser.address, + receiver=maker.address, + amount=10_000_000 + ) +) + +# print(algorand.account.get_information(maker.address)) + +sent_txn=algorand.send.asset_create( + AssetCreateParams( + sender=maker.address, + total=100, + asset_name="Edu4Teen", + unit_name="E4T" + ) +) + +asset_id=sent_txn["confirmation"]["asset-index"] +# print("Asset ID: ", asset_id) + +receiver_acct = algorand.account.random() +algorand.send.payment( + PayParams( + sender=dispenser.address, + receiver=receiver_acct.address, + amount=10_000_000 + ) +) + +# print(algorand.account.get_information(receiver_acct.address)) + +group_txn=algorand.new_group() + +group_txn.add_asset_opt_in( + AssetOptInParams( + sender=receiver_acct.address, + asset_id=asset_id + ) +) + +group_txn.add_payment( + PayParams( + sender=receiver_acct.address, + receiver=maker.address, + amount=2_000_000 + ) +) + +group_txn.add_asset_transfer( + AssetTransferParams( + sender=maker.address, + receiver=receiver_acct.address, + asset_id=asset_id, + amount=18 + ) +) + +group_txn.execute() +print(algorand.account.get_information(receiver_acct.address)) +print("Receiver assets: ", algorand.account.get_information(receiver_acct.address)["assets"][0]["amount"]) +print("maker assets: ", algorand.account.get_information(maker.address)["assets"][0]["amount"]) \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 00000000..712eb8f9 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,14 @@ +[tool.poetry] +name = "codespace-algorand" +version = "0.1.0" +description = "" +authors = ["Hassan Ali <121270268+hassanaly18@users.noreply.github.com>"] +readme = "README.md" + +[tool.poetry.dependencies] +python = "^3.12" + + +[build-system] +requires = ["poetry-core"] +build-backend = "poetry.core.masonry.api"