成功轉職學員 Ethan Chen 開發 ERC7007 NFT Marketplace 與學習心得

學員已成功轉職區塊鏈工程師,經同意轉載學員心得發表 原文 

簡介

我在今年 1/6 開始了 KryptoCamp 區塊鏈全端工程師實戰營 的訓練

簡單來說,是針對已經會 Solidity 基礎語法的人,挑戰進階的實作。

這是有明確目的的挑戰 _以開發者的角度學習和討論。

Dragon Mint Marketplace

是我一人獨自完成的專案,從前端到後端以及鏈上合約

其內容是基於課程所學及我個人向外擴展的一些知識範疇來構築的

實戰營的課程總共有八週,前四週我基本在追趕課程教授的內容

一來是因為進階的內容需要對鏈上資訊有更深的理解

二來是因為前端的轉換(從我原本使用的 Vue.js 轉換到 React)

到後來發現 Next.js,更適合我快速迭代產品

說到這裡,嘿,對

我一開始就想做個集成抽象帳戶(Account Abstraction)的NFT Marketplace

Dragon Mint Marketplace Home Page

先上送新鮮的域名(今天剛買的) https://www.dragon-mint-anan.dev/

手機友善,RWD,可以用手機正常瀏覽,但還沒有測試用手機進行各項交易

強烈建議用 PC 或是 Laptop,這個專案會繼續開發下去,敬請期待?

回來繼續課程的部分

渡過了前面的陣痛期(?)後,開始真正進入到專案的開發

這時候課程內對抽象帳戶(Account Abstraction)的教學以及每週一天實體的指導起到很大的幫助,減少了我不少撞牆的時間成本。

source: https://docs.particle.network/developers/account-abstraction

其中便很清楚地講述了上面這張圖所有的內容概要

到了課程結束倒數一週半的時候,基本的ERC721交易市場已經接近完成了

最後一週的時候,壓線完成了

經過內部的 Demo 後,指導課程的講師: Paul 教練給了我一些開發項目的指導

好了,AI Oracle到現在還沒有出現,應該也快要出現了

加入這個內容到這個專案中是因為,課程結束後,經過講師的鼓勵

我試著參加了人生第一場 Hackathon

Hackathon : ETHTaipei Hackathon 2024 (March 22–24)

然後我沒有來得及做完,結果沒有交(???????????????????)

好。

反正正是因為這次我要報名參加的主題

AI Oracle x Content Generation

所以催生了後面導入

ERC-7007 

Verifiable AI-Generated Content Token

以及

Verifiable oracle protocol :

brings AI and complex compute onchain

總結這次Hackathon的經驗來說,還是好的,開始總是好的

明年我一定會做完

專案詳細的介紹:

我選擇附上我報告時的投影片連結

投影片

智能合約

  • UnitNft : ERC721合約(ERC721URIStorage)
  • UnitNftFactory : UnitNft Factory合約(create 2)
  • DragonMintMarketplace : NFT Marketplace 交易邏輯合約

Prompt :

  • IAIOracle
  • AIOracleCallbackReceiver
  • ERC7007Opml
  • IOpml

Prompt合約詳情參考

前端

  • Next.js 作為基礎框架
  • CSS 和 Chakra UI
  • React hook form 用於表單管理
  • RainbowKit 用於錢包連接
  • Pinata 用於將資產上傳到 IPFS

後端

  • The Graph : Subgraph

Subgraph: 用於Event indexed,以便快速紀錄Dragon Mint Marketplace item狀況

WEB3由於合約的寫入完成時間有不確定性

用戶要能在送出交易後繼續進行操作,並提醒交易狀況

更好的用戶體驗,是必須的

1. write and asyncWrite的使用

2. Event 的監聽

這兩點是我這次開發專案時特別感受到的地方

Verifiable AI Oracle(with ERC7007)

Create ERC7007的部分,我打算另外單獨再寫一篇(一來也還在繼續開發中)

但是 Dragon Mint Marketplace 中的 create erc7007 with prompt 是可以使用的喔

歡迎來體驗,但請準備好你的 Sepolia Testnet 測試幣(微笑)

最後很高興參加 KryptoCamp 區塊鏈全端工程師實戰營的訓練

謝謝 KryptoCamp 的大家