Solana NFT — це не просто JPEG

Раніше я думав, що NFT — це просто цифрові зображення.

Після тижня розробки на Solana моє ставлення змінилося. Я витратив час на створення NFT, додавання метаданих та організацію колекцій у devnet.

Ось чого я навчився.

NFT не є окремим типом активів на Solana.

Вони використовують ту саму модель SPL-токенів, що й звичайні токени. Вони все ще використовують:

  • акаунт мінту (mint account)
  • токен-акаунт (token account)
  • гаманець власника (owner wallet)

Єдина відмінність полягає в конфігурації. Щоб перетворити токен на NFT, потрібно встановити такі правила:

  • Емісія (supply) дорівнює 1
  • 0 знаків після коми (decimals)
  • Вимкнути право на мінт (mint authority) після випуску

Вимкнення права на мінт назавжди фіксує емісію. Те, що виглядає як нова категорія активів, насправді є тією ж архітектурою, але з іншими правилами.

Метадані роблять NFT значущим. Я використовував Metadata Extension, щоб додати назву, символ та URI.

NFT не зберігає зображення. Зберігання великих файлів on-chain є занадто дорогим. Замість цього NFT зберігає URI. Цей URI вказує на JSON-файл off-chain. Коли гаманець відображає ваш NFT, він зчитує on-chain метадані, переходить за URI та знаходить зображення.

Я також дізнався про колекції. Використовуючи розширення Group та Member, я пов'язав кілька NFT з одним NFT колекції.

Уявіть це як зв'язок «батько-дитина» у базі даних.

  • Колекція — це «батько».
  • NFT — це «діти» (members).

Цей зв'язок існує on-chain. Це не просто функція додатка. Будь-хто може перевірити, чи належить NFT до колекції, проаналізувавши дані акаунта.

Я також протестував оновлення NFT. Я змінював назви та оновлював URI. Зміни відбувалися on-chain миттєво. Однак зображення в гаманці може оновитися не одразу. Це стається тому, що гаманці кешують метадані. Дані on-chain є правильними, але візуальному шару потрібен час на оновлення.

Головний урок: не припускайте, як щось працює. Перевіряйте акаунт і верифікуйте дані.

NFT побудовані на тому ж фундаменті, що й будь-який інший актив на Solana: мінти, акаунти та правила програм. Зображення — для користувача. Саме структура визначає актив.

Джерело: https://dev.to/devduchess/understanding-solana-nfts-as-a-web2-developer-more-than-just-jpegs-5ekm