Подключите нашего Telegram-бота для уведомлений о новых проектах
С нуля разработать Telegram Mini App с использованием Web3 и NFT
Разместить заказ

o
Заказчик
Отзывы фрилансеров:
+ 0
- 0
Зарегистрирован на сайте 6 месяцев
Бюджет:
2 000 — 3 000 ₽/час
Создание мини-приложения для Telegram (Telegram Mini App), в котором пользователи могут получить доступ, используя криптокошелек, для проверки владения определенными NFT. Каждое купленное пользователем NFT (проданного нами же посредством rarible), должно представлять собой долю от общего. Мини-приложение должно корректно отслеживать и отображать общие доли, которые принадлежат пользователю.
Цели проекта
Обеспечить доступ в мини-приложение Telegram только для тех пользователей, которые владеют определенными NFT.
Верифицировать владение NFT через криптокошелек пользователя.
Рассчитывать и отображать доли пользователей относительно общей суммы накоплений.
Предоставить пользователям интерфейс для входа и проверки их долей.
3. Основные функциональные требования
Вход в мини-приложение через криптокошелек:
Пользователь должен подтвердить владение своим криптокошельком через подпись сообщения.
Подпись будет проверяться с помощью стандартных методов библиотеки Web3 и сравниваться с адресом в базе данных.
Проверка владения NFT:
Только пользователи, которые владеют NFT, указанным в базе данных, могут войти в приложение.
Проверка владения осуществляется путем:
Запроса на наличие записи о покупке NFT в базе данных.
Проверки владения NFT через контракт на блокчейне (с использованием Web3).
Отображение данных о долях:
При успешной проверке владения NFT пользователю должно быть отображено:
Общее количество долей в накоплении.
Количество долей, принадлежащее пользователю.
Требуемое количество долей для выполнения условий накопления.
Поддержка нескольких накоплений:
Система должна поддерживать несколько накоплений, связанных с различными NFT. Каждое накопление имеет свои параметры, такие как общее количество долей.
Безопасность:
Данные о пользователях и их долях должны быть защищены.
Подпись сообщений и проверка владения должны обеспечивать безопасность аутентификации.
4. Функциональные компоненты системы
Смарт-контракт:
Поскольку продажа осуществляется через rarible, к nft выставленным на площадке уже привязан смарт-контракт
База данных:
Хранить информацию о проданных NFT, включая:
nft_id: ID токена.
contract_address: Адрес смарт-контракта.
buyer_address: Адрес покупателя.
sale_date: Дата продажи.
Связь с различными накоплениями (каждое накопление должно хранить свои параметры и связанный с ним набор NFT).
Телеграм-бот:
Обеспечивает интерфейс взаимодействия с пользователем через Telegram.
Запрашивает у пользователя его Ethereum-адрес и подпись сообщения для аутентификации.
Проверяет владение пользователем NFT через взаимодействие с базой данных и блокчейном.
Отправляет пользователю данные о его долях и накоплениях.
Web3-интеграция:
Подключение к блокчейну через Web3 для проверки владения и взаимодействия со смарт-контрактом.
Верификация подписей пользователей и проверка баланса NFT.
5. Функциональные требования к интерфейсу
Мини-приложение Telegram:
Мини-приложение должно быть реализовано как веб-приложение, загружаемое через встроенный браузер Telegram.
Пользователь должен увидеть приветственное сообщение и предложение подписать сообщение для подтверждения владения криптокошельком.
Интерфейс должен отображать текущие и требуемые доли для выбранных накоплений.
Telegram-бот:
Должен предоставлять команду для входа в мини-приложение (например, /start).
Должен поддерживать взаимодействие с пользователем для сбора и проверки данных (Ethereum-адрес, подпись).
6. Нефункциональные требования
Безопасность:
Проверка подписи должна обеспечивать безопасность аутентификации и предотвращать попытки подмены.
Защита от несанкционированного доступа к данным пользователя.
Производительность:
Проверка и расчет долей должны выполняться быстро и не занимать больше нескольких секунд.
Минимизация задержек при взаимодействии с блокчейном.
Цели проекта
Обеспечить доступ в мини-приложение Telegram только для тех пользователей, которые владеют определенными NFT.
Верифицировать владение NFT через криптокошелек пользователя.
Рассчитывать и отображать доли пользователей относительно общей суммы накоплений.
Предоставить пользователям интерфейс для входа и проверки их долей.
3. Основные функциональные требования
Вход в мини-приложение через криптокошелек:
Пользователь должен подтвердить владение своим криптокошельком через подпись сообщения.
Подпись будет проверяться с помощью стандартных методов библиотеки Web3 и сравниваться с адресом в базе данных.
Проверка владения NFT:
Только пользователи, которые владеют NFT, указанным в базе данных, могут войти в приложение.
Проверка владения осуществляется путем:
Запроса на наличие записи о покупке NFT в базе данных.
Проверки владения NFT через контракт на блокчейне (с использованием Web3).
Отображение данных о долях:
При успешной проверке владения NFT пользователю должно быть отображено:
Общее количество долей в накоплении.
Количество долей, принадлежащее пользователю.
Требуемое количество долей для выполнения условий накопления.
Поддержка нескольких накоплений:
Система должна поддерживать несколько накоплений, связанных с различными NFT. Каждое накопление имеет свои параметры, такие как общее количество долей.
Безопасность:
Данные о пользователях и их долях должны быть защищены.
Подпись сообщений и проверка владения должны обеспечивать безопасность аутентификации.
4. Функциональные компоненты системы
Смарт-контракт:
Поскольку продажа осуществляется через rarible, к nft выставленным на площадке уже привязан смарт-контракт
База данных:
Хранить информацию о проданных NFT, включая:
nft_id: ID токена.
contract_address: Адрес смарт-контракта.
buyer_address: Адрес покупателя.
sale_date: Дата продажи.
Связь с различными накоплениями (каждое накопление должно хранить свои параметры и связанный с ним набор NFT).
Телеграм-бот:
Обеспечивает интерфейс взаимодействия с пользователем через Telegram.
Запрашивает у пользователя его Ethereum-адрес и подпись сообщения для аутентификации.
Проверяет владение пользователем NFT через взаимодействие с базой данных и блокчейном.
Отправляет пользователю данные о его долях и накоплениях.
Web3-интеграция:
Подключение к блокчейну через Web3 для проверки владения и взаимодействия со смарт-контрактом.
Верификация подписей пользователей и проверка баланса NFT.
5. Функциональные требования к интерфейсу
Мини-приложение Telegram:
Мини-приложение должно быть реализовано как веб-приложение, загружаемое через встроенный браузер Telegram.
Пользователь должен увидеть приветственное сообщение и предложение подписать сообщение для подтверждения владения криптокошельком.
Интерфейс должен отображать текущие и требуемые доли для выбранных накоплений.
Telegram-бот:
Должен предоставлять команду для входа в мини-приложение (например, /start).
Должен поддерживать взаимодействие с пользователем для сбора и проверки данных (Ethereum-адрес, подпись).
6. Нефункциональные требования
Безопасность:
Проверка подписи должна обеспечивать безопасность аутентификации и предотвращать попытки подмены.
Защита от несанкционированного доступа к данным пользователя.
Производительность:
Проверка и расчет долей должны выполняться быстро и не занимать больше нескольких секунд.
Минимизация задержек при взаимодействии с блокчейном.
Разделы:
Заказ
Опубликован:
24.10.2024 | 01:15 [поднят: 24.10.2024 | 01:15]