Sitemap
Lemon-mon

Lemon-mon

超完整教程 - 程式新手10分鐘快速製作10,000+ NFTs (Solana / Ethereum)

8 min readMar 13, 2022

--

第一步-環境設置:

  1. 安裝node
https://nodejs.org/en/download/

盡量安裝LTS(long term support)的版本, 後面比較不會有衝突的問題。

2. 安裝Visual Studio Code (下面簡稱VS Code)

選擇自己的作業系統做安裝,如果習慣用其他code editors 像是Sublime也可以。但是下面的教程會用VS code 做示範。

3.安裝git

https://git-scm.com/downloads

作業系統是linux以及mac就按照頁面上的指示,如果是window的話滑到下面一點的地方,安裝過程有任何問題歡迎詢問我。網路上也有很多相關教程。

第二步-複製數據庫到自己的電腦:

  1. clone project

首先進入到 https://github.com/HashLips/hashlips_art_engine

按右上角code的地方,複製HTTPS下面那段連結。

Press enter or click to view image in full size

2. 打開VS code

Press enter or click to view image in full size
  • 進入之後點 左上角的File → Open Folder,找一個你想放置這個檔案的地方,然後Select folder。
  • 先確認第一步安裝環境有成功,在VS code 的Terminal→New Terminal輸入:
node --version //檢查node的版本,有版本出現表示安裝成功
git --version //檢查git有安裝成功,有版本出現表示安裝成功
  • 之後在Terminal→New Terminal,輸入 git clone 上面複製的內容
git clone https://github.com/HashLips/hashlips_art_engine.git
Press enter or click to view image in full size
  • 完成之後,左上角的File → open Folder, 選擇你剛剛放置檔案的位置,點開檔名叫 hashlips_art_engine 的檔案。
  • 在Terminal→New Terminal的地方輸入
npm install

第三步 - 修改自己需要的參數:

(如果不需要或是沒有打算上架到任何平台或網站,這一步可以直接跳過)

Get Lemon-mon’s stories in your inbox

Join Medium for free to get updates from this writer.

這邊給的參數是最基礎需要修改的內容,尤其是address的地方一定要改。其他修改的內容比較不適合程式新手。我這邊就先不多加說明了。

  • 打開src(source)的資料夾裡面的config.js
// General metadata for Ethereum
const namePrefix = "Your Collection";
const description = "Remember to replace this description";
const baseUri = "ipfs://NewUriToReplace";
  • namePrefix 是 NFT collection 想叫什麼名字
  • description 是針對這個collection的介紹
  • BaseUri 是 The Uri to your files,也就是你json file的ipfs 連結。

如何將檔案上傳到ipfs不是今日主題的重點,我這邊就不在做詳細描述。有機會的話,之後也可以和大家聊聊。

const solanaMetadata = {
symbol: "YC",
seller_fee_basis_points: 1000, // Define how much % you want from secondary market sales 1000 = 10%
external_url: "<https://www.youtube.com/c/hashlipsnft>",
creators: [
{
address: "7fXNuer5sbZtaTEPhtJ5g5gNtuyRoKkvxdjEjEnPN4mC",
share: 100,
},
],
};
  • symbol、external_url 記得改成個人需要的信息
  • address的部分最重要,記得放自己的wallet地址。 如果有一個以上的creator,可以放超過一個address,但是記得share加總需要為100。

第四步 — 上傳自己的Images來生成NFTs:

針對只是想試試看合成的結果,自己還沒準備圖面的,歡迎取用我Google Drive的素材:https://drive.google.com/drive/folders/1Zhy_YgMIxxknk-u90L3xtXo6xN1oxiFy?usp=sharing

  • 打開src(source)的資料夾裡面的config.js
const layerConfigurations = [
{
growEditionSizeTo: 10,
layersOrder: [
{ name: "Background" },
{ name: "Cat" },
{ name: "Phrase" },
],
},
];

如果是用上面我提供的素材的話,直接把上面這段code複製貼上,取代原本的即可。

  • growEditionSizeTo 決定你想要生成幾個NFTs
  • Layers order 的順序就是最後NFTs生成的順序,比如說根據我上方的順序。
  • 第一層是Background,再來是Cat,再來是Phrase
  • 所以背景一定要放在第一個,不然會覆蓋在其他上面從而導致看不到其他圖層。
  1. 到你剛剛hashlips_art_engine 的資料夾裡面,先刪除原先layers裡面的檔案,再把自己的images 放到 layers 的資料夾裡面,檔案名要跟上方的layersOrder裡面的一樣(大小寫也是)

2. 資料夾裡面的檔案名稱後面,需要放上一個井號作為此特征的稀有比例。數字越大出現的幾率越大,1代表最少出現(最稀有),100是最常出現。如果要平均分配的話就都放100。

  • 所以每一張圖片都需要放上 #後面接著數字
Press enter or click to view image in full size
Press enter or click to view image in full size
Press enter or click to view image in full size

在src →config.js 裡面,你也可以增加其他的設定,以下我只會根據最基礎的設定簡單帶過。

  • format 是針對圖片的像素,設定成你想要大小
const format = {
width: 512,
height: 512,
smoothing: false,
}
  • 最後根據你之後想要在Eth network 還是 Solana network .
  • 如果是 Ethereum 的話 就是 NETWORK.eth,而 Solana 的話就是 NETWORK.sol
const network = NETWORK.eth; \\這行再config.js的前面幾行

最重要的記得按 src → config.js 然後ctrl + s 存檔。

第五步,專屬於你的NFT完成啦:

接著在 Terminal的地方 輸入

node index.js

完成之後會在hashlips_art_engine 的資料夾裡面出現一個叫build的檔案夾,裡面會看到一個images file 和一個 Json file。

  • images 裡面的file就是你生成的圖片。
Press enter or click to view image in full size

總結:

上述有任何不理解的地方,歡迎隨時留言給我。之後也會上傳操作的影片到YouTube,到時候再請大家多多支持啦~~

下一篇文章會說明如何製作Minting Website

那今天就先謝謝大家 我們下次見 😍

--

--