# Waves IDE
Waves IDE — онлайн-среда для разработки и тестирования смарт-контрактов на языке Ride.
Возможности Waves IDE:
- Автодополнение кода (подсказки).
- Подсветка синтаксиса и ошибок.
- Отправка ссылки на файл.
- Библиотека смарт-контрактов и тестов.
- Интерактивная консоль Ride REPL.
- Компиляция и установка Ride-скриптов.
- Подписание и отправка транзакций.
- Интерактивная консоль JavaScript со встроенными функциями работы с блокчейном.
- Запуск JavaScript-тестов.
Адрес Waves IDE:
- https://waves-ide.com/ — основная среда.
- https://stagenet.waves-ide.com/ — среда с поддержкой новых функций протокола Waves, доступных только на Stagenet.
# Настройка
Чтобы изменить настройки для работы с блокчейном:
- Нажмите кнопку или Ctrl + Shift + , (для macOS — Cmd ⌘ + Shift + ,).
- Если требуется, измените сеть блокчейна и URL ноды.
# Создание аккаунта
- Нажмите на аватар аккаунта или кнопку Add account в правом верхнем углу. Выберите Generate new account.
- Нажмите Show seed and private key и сохраните секретную фразу в укромном месте — она потребуется для восстановления доступа к аккаунту.
- Измените название аккаунта, чтобы быстро находить его в списке. Для этого наведите указатель на название аккаунта в списке и нажмите . Это название отображается только в Waves IDE.
Чтобы импортировать ранее созданный аккаунт, нажмите на аватар аккаунта или кнопку Add account, выберите Import account и вставьте секретную фразу.
💡 Чтобы пополнить баланс аккаунта на Testnet или Stagenet:
Скопируйте адрес аккаунта: нажмите на название аккаунта, затем нажмите кнопку .
Перейдите на страницу:
• https://wavesexplorer.com/ru/faucet?network=testnet для Testnet;
• https://wavesexplorer.com/ru/faucet?network=stagenet для Stagenet.
Вставьте адрес и нажмите Request WAVES.
# Написание Ride-скрипта
Нажмите кнопку и выберите тип скрипта.
В процессе написания Ride-скрипта Waves IDE:
- подсказывает названия встроенных функций, операторов, переменных и структур Ride — просто начните ввод или нажмите Ctrl + пробел (для macOS — Cmd ⌘ + пробел);
- подсвечивает ошибки;
- показывает текущий размер и сложность скрипта.
Файл скрипта сохраняется в Waves IDE автоматически. Чтобы сохранить файл на своем компьютере, в меню справа наведите указатель мыши на имя файла и нажмите . Чтобы поделиться скриптом, нажмите кнопку Share File под кодом скрипта.
💡 Примеры скриптов вы найдете в меню Library.
# Ride REPL: интерактивная консоль Ride
В консоли Ride REPL можно ввести любое выражение на языке Ride и сразу увидеть результат.
Перейдите на вкладку Ride REPL в нижней части окна. Введите выражение и нажмите Enter.
# Установка dApp-скрипта или скрипта аккаунта
- Откройте dApp-скрипт или скрипт аккаунта и нажмите Deploy.
- В окне Sign and publish выберите аккаунт и нажмите Add sign, чтобы добавить подпись к транзакции установки скрипта.
- Нажмите Publish, чтобы отправить транзакцию.
# Выпуск смарт-ассета
- Откройте скрипт ассета и нажмите Issue.
- В окне Sign and publish добавьте в JSON-представление транзакции выпуска поля
name
,description
,quantity
. Описание полей см. в разделе Транзакция выпуска. - Выберите аккаунт и нажмите Add sign, чтобы добавить подпись к транзакции.
- Нажмите Publish, чтобы отправить транзакцию.
# Подписание и отправка транзакций
- Нажмите кнопку .
- В окне Sign and publish вставьте JSON-представление транзакции.
- Выберите аккаунт и нажмите Add sign, чтобы добавить подпись к транзакции.
- Нажмите Publish, чтобы отправить транзакцию.
# Интерактивная консоль JavaScript
Перейдите на вкладку Console в нижней части окна. Введите команду и нажмите Enter.
Консоль поддерживает функции для взаимодействия с блокчейном Waves: подписание и отправку транзакций, чтение данных блокчейна, работу с ключами аккаунта и другие. См. Список функций js-test-env.
# Запуск тестов
В JS-тестах поддерживаются функции describe
, before
, it
, expect
и другие функции библиотек mocha и chai. Примеры тестов вы найдете в меню Library справа.
Чтобы выполнить тест:
- Нажмите кнопку и выберите Test.
- Замените автоматически сгенерированный код на свой тест.
- Нажмите Run full test.
Результат теста отображается в нижней части окна на вкладке Tests.