Создаем dApp с помощью EthStorage
June 25th, 2024

EthStorage — это хранилище данных второго уровня, построенное поверх Ethereum. Его цель состоит в достижении «петабайтной емкости при снижении затрат в 1000 раз».

«Посредством периодической отправки доказательств хранения из EthStorage в основную сеть платформа стремится извлечь выгоду из функций безопасности Ethereum, значительно увеличивая емкость хранилища при значительно сниженных затратах», — говорится в пресс-релизе Gate Ventures.

По мнению представителей инвестфонда, проект предоставляет функции, которые в настоящее время недоступны у аналогов вроде Arweave и Filecoin.

EthStorage привлек $7 млн посевных инвестиций. По итогам раунда компанию оценили в $100 млн.

Сбор средств возглавил венчурный криптофонд dao5 при участии SevenX Ventures, Foresight Ventures, Sky9 Capital, Gate Ventures и Galxe.

Для выполнения данной активности нам необходима ОС на базе Linux. (Ubuntu) Также у нас должен быть кошелек с более чем 2 sepolia ETH в нем.

Загрузка файлов на сервер

Прежде всего, нам нужно создать каталог dist с помощью этой команды

mkdir dist

Переходим в папку dist:

cd dist

Скачиваем данную картинку к себе на ПК:

На сервере открываем папку dist которую создали ранее и загружаем скаченную картинку на сервер в папку dist

Создаем файл app.html:

nano app.html

Видим следующее:

копируем ниже приведенный код и вставляем его в наш app.html и нажимаем клавиши CTRL+X+Y

<html>
    <head>
        <script> 
            async function fetchData() { 
                // web3 URL is define in https://eips.ethereum.org/EIPS/eip-4804, please find more detail on https://web3url.io
                const url = 'web3://0xf14e64285Db115D3711cC5320B37264708A47f89:11155111/greeting'; 
                const response = await fetch(url); 
                const data = await response.text(); 
                document.getElementById('content').textContent = data; 
            } 
            window.onload = fetchData; 
        </script>
    </head>
    <body>
        <div id="content"> Loading greeting... </div>
        <br>
        <img  src="./degen.jpeg"  alt=""> 
    </body> 
</html>

Теперь когда 2 наших файла готовы переходим в папку выше с помощью команды:

cd ..

Устанавливаем ethfs-cli

npm i -g ethfs-cli

если при установке NPM будет ругаться, то прописываем следующее:

curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash source ~/.nvm/nvm.sh nvm install --lts nvm use --lts npm --version

Создаем контракт FlatDirectory

Теперь мы должны создать FlatDirectory с помощью этой команды:

ethfs-cli create -p YOUR_WALLET_PRIVATE_KEY -c 11155111

где YOUR WALLET PRIVATE KEY ваш приватный ключ кошелька Метамаск, на кошельке должно быть более 2 ETH в сети Sepolia.

Далее вы увидите следующее:

копируем FlatDirectory address.

Deploy приложения

В этом разделе мы загрузим нашу папку в каталог FlatDirectory, который мы только что создали, с помощью следующей команды:

ethfs-cli upload -f dist -a flat_directory_address -c 11155111 -p YOUR_WALLET_PRIVATE_KEY -t 1

где fiat_directory_address это то что мы скопировали выше и YOUR_WALLET_PRIVATE_KEY наш приватный ключ

Далее вы должны будете увидеть следующее:

Все. Наше развертывание приложения завершено.

Также теперь мы можем получить доступ к нашему Dapp:

web3://:11155111/app.html

пример -

Заключительный шаг

Теперь нам следует разместить в твиттере созданную на последнем шаге ссылку web3://flat_directory_address... с адресом кошелька, который мы использовали для этого квеста, а также пометить тегом @EthStorage

затем заполнить эту форму: https://dawme4mo.forms.app/ethstorage-2nd-campaign-submission?ref=blog.ethstorage.io

На этом все ;)

Официальная статья квеста:

Twitter:

Subscribe to Mioku
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.
More from Mioku

Skeleton

Skeleton

Skeleton