Membangun platform perdagangan NFT desentralisasi dari 0 hingga 1 seluruh proses

robot
Pembuatan abstrak sedang berlangsung

Membangun platform perdagangan NFT desentralisasi dari nol

Untuk NFT yang menggunakan protokol ERC-721, bagaimana cara mewujudkan perdagangan desentralisasi? Saat ini, sebagian besar bursa NFT utama menggunakan metode pemesanan untuk bertransaksi, mirip dengan menempatkan barang di rak supermarket, pembeli bisa langsung membeli jika merasa harga sesuai. Artikel ini akan membuat platform perdagangan NFT desentralisasi dasar dengan menulis kontrak pintar dan halaman depan yang sederhana.

Seri Pemula Web3: Membangun DEX NFT dari nol

NFT(Token Non-Fungible)Deskripsi

NFT adalah token non-fungible, setiap Token adalah unik, mengikuti protokol ERC-721. Secara umum, setiap NFT akan menampilkan gambar yang berbeda di dompet, dan setiap grup NFT memiliki ID unik untuk membedakannya.

Karena karakteristik NFT, harga tidak dapat ditetapkan melalui kurva harga seperti token ERC-20. Oleh karena itu, cara perdagangan yang cukup umum saat ini adalah dalam bentuk buku pesanan.

Web3 Pemula Series: Mewujudkan NFT DEX dari Nol

Mode perdagangan buku pesanan

Model buku pesanan secara sederhana adalah harga barang yang ditetapkan oleh manusia, berbeda dengan cara perhitungan harga melalui kurva harga. Buku pesanan biasanya memiliki dua mode perdagangan:

  1. Penetapan harga: Penjual menetapkan harga jual, pembeli dapat langsung membeli jika merasa cocok.

  2. Permintaan Pembelian: Pembeli mengeluarkan pesanan permintaan, penjual dapat menjual jika merasa harga sesuai.

Secara umum, harga order pembelian akan lebih rendah daripada harga order penetapan. Artikel ini terutama membahas mode order penetapan.

Web3 pemula seri: Mewujudkan NFT DEX dari nol

Fitur Dasar dari Platform NFT

Sebuah platform perdagangan NFT dasar harus mencakup fungsi berikut:

  1. Daftar Produk: Mendaftarkan NFT sesuai dengan harga yang ditentukan
  2. Membeli barang: melakukan pembelian berdasarkan harga NFT
  3. Biaya platform: Biaya diambil berdasarkan persentase dari harga transaksi.

Proses Penempatan Produk

  1. Frontend: Pengguna memilih NFT dan menetapkan harga, klik untuk mengunggah
  2. Kontrak: Pengguna memberikan otorisasi untuk operasi kontrak NFT

Kontrak perlu memelihara tabel pemetaan harga barang yang diunggah oleh pengguna. Bagian data ini juga dapat disimpan di layanan terpusat untuk mengurangi beban kontrak, dalam artikel ini akan disimpan langsung di dalam kontrak.

Proses Pembelian Barang

  1. Frontend: Pengguna memilih NFT yang ingin dibeli, klik beli
  2. Kontrak: Mentransfer dana pembeli kepada penjual, NFT kepada pembeli

Web3 pemula seri: Mewujudkan NFT DEX dari nol

Mewujudkan platform perdagangan NFT

1. Buat NFT uji coba

Anda dapat dengan cepat menyebarkan kontrak NFT protokol ERC-721 untuk pengujian melalui Remix.

Web3 Pemula Series: Membangun NFT DEX dari Nol

2. Menulis kontrak pintar

Kontrak harus mencakup fungsi utama berikut:

2.1 Penjual mengunggah NFT

Proses:

  1. Pengguna memilih NFT
  2. Atur harga ( dapat dinilai dalam USDT, USDC, atau ETH )
  3. Memberikan otorisasi NFT kepada kontrak
  4. Memanggil metode penempatan

Metode penempatan membutuhkan:

  1. Verifikasi kepemilikan NFT
  2. Tambahkan catatan peluncuran
  3. Memicu peristiwa peluncuran

Web3 pemula seri: Mewujudkan DEX NFT dari nol

2.2 Pembeli membeli NFT

Proses:

  1. Membaca data NFT dari listings
  2. Hitung dan potong biaya transaksi
  3. Mentransfer NFT kepada pembeli
  4. Memicu peristiwa pembelian

Web3 pemula seri: Membangun NFT DEX dari nol

2.3 Batalkan penarikan

Atur nilai isActive yang sesuai untuk NFT dalam listings menjadi false.

2.4 Biaya penarikan

Tarik biaya yang terakumulasi dalam kontrak ke alamat yang ditentukan.

Web3 pemula seri: Mewujudkan NFT DEX dari nol

3. Mengembangkan antarmuka depan

Gunakan alat berikut:

  • Ant Design Web3: menghubungkan dompet dan menampilkan NFT
  • Wagmi: Berinteraksi dengan dompet
  • Next.js + Vercel: men-deploy proyek

Tampilan depan terdiri dari tiga halaman utama:

  1. Mint: digunakan untuk mencetak NFT uji coba
  2. Beli: Pasar NFT, dapat membeli NFT
  3. Portofolio: mengelola NFT pengguna, mendukung penambahan dan penghapusan

Seri Pemula Web3: Mewujudkan NFT DEX dari nol

3.1 Menghubungkan dompet

Menggunakan komponen koneksi Ant Design Web3.

Web3 Pemula Seri: Mewujudkan NFT DEX dari Nol

3.2 Halaman Mint

Gunakan metode useWriteContract dari wagmi untuk memanggil metode mint dari kontrak NFT.

Web3 Pemula Seri: Membangun NFT DEX dari Nol

3.3 Halaman Portfolio

Menampilkan NFT pengguna, mendukung operasi penambahan dan pengurangan.

Saat listing, panggil metode listNFT, dan untuk membatalkan, panggil metode cancelListing. Sebelum listing, NFT harus diberikan izin kepada kontrak.

Web3 pemula seri: Mewujudkan DEX NFT dari nol

3.4 Halaman Beli

Tampilkan semua NFT yang terdaftar, panggil metode purchaseNFT untuk melakukan pembelian.

Web3 pemula seri: Mewujudkan NFT DEX dari nol

Dengan demikian, sebuah platform perdagangan NFT desentralisasi dasar telah selesai. Proyek dapat diterapkan di Vercel untuk pengujian dan penggunaan.

Lihat Asli
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
  • Hadiah
  • 3
  • Bagikan
Komentar
0/400
GasSavingMastervip
· 21jam yang lalu
Biaya transaksi ini dijelaskan dengan baik.
Lihat AsliBalas0
MetaLord420vip
· 21jam yang lalu
Tutorial yang sangat baik, wawasan berharga penuh.
Lihat AsliBalas0
DisillusiionOraclevip
· 21jam yang lalu
Saya mau beli meskipun saya tidak mengerti!
Lihat AsliBalas0
  • Sematkan
Perdagangkan Kripto Di Mana Saja Kapan Saja
qrCode
Pindai untuk mengunduh aplikasi Gate
Komunitas
Bahasa Indonesia
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)