❤ Большое спасибо от всего сердца a1300 за участие в этой серии статей с пошаговым руководством по разработке DApps на платформе ASCH.

Часть 1 - Установка блокчейна
Часть 2 - Создайте свой первый сайдчейн
Часть 3 - Создание внешнего интерфейса для Dapp сайдчейна (скоро)
Часть 4 - Общие сведения Архитектура блокчейна и сайдчейна (скоро)
Часть 5 - Выпуск собственного токена (скоро)

В этой серии статей мы будем изучать шаг за шагом, как установить блокчейн ASCH и разрабатывать децентрализованные приложения (DApps) на отдельной боковой цепи. Мы будем разрабатывать децентрализованные приложения полностью на JavaScript. Вам не нужно изучать новый язык смарт-контрактов, например Solidity.

Перспективы

В этой серии руководств мы разработаем небольшое децентрализованное приложение, в котором каждый пользователь может опубликовать статью, а другие пользователи смогут проголосовать за нее.

Структура серии статей

Я хотел бы использовать другой подход: сначала мы запачкаем руки, а после этого мы рассмотрим концепции, лежащие в основе блокчейна и децентрализованных приложений.

Предпосылки

Вы должны иметь опыт работы в информатике не менее одного-двух лет. Вам не обязательно что-либо знать о блокчейне. Вы узнаете это по мере нашего продвижения. Полезно знать: JavaScript, Node.js, Vue.js.

Платформа блокчейн ASCH

Платформа ASCH - это блокчейн-платформа, использующая JavaScript, что упрощает разработку децентрализованных приложений. Весь блокчейн и все его компоненты написаны на JavaScript. Децентрализованные приложения (DApps) также написаны на JavaScript. Это позволяет разработчикам, хорошо знакомым с JavaScript, начать писать DApps на ASCH.

Установите блокчейн в Linux

Я рекомендую использовать Ubuntu. Но он также должен работать в других дистрибутивах Linux.
В будущем процесс установки также будет возможен в Windows, до тех пор вы можете установить Linux на виртуальную машину (Run-Linux-in-Windows-in -a-VirtualBox )

Установите Node.js

Сначала установите curl:

sudo apt-get install curl

Установите node.js:

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs

Установить зависимости

Установите все необходимые зависимости.

# Install dependencies
sudo apt-get install curl sqlite3 ntp wget git libssl-dev openssl make gcc g++ autoconf automake python build-essential -y
# libsodium for ubuntu
sudo apt-get install libtool libtool-bin -y
# Install nvm
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
# This loads nvm
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" 
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion
# Install node and npm for current user.
nvm install 8.0.0
# check node version and it should be v8.x.x
node --version

Установить git

sudo apt-get install git

Блокчейн

Теперь клонируйте репозиторий блокчейнов и установите его пакеты.

git clone https://github.com/AschPlatform/asch && cd asch && chmod u+x aschd
npm install

Запустите блокчейн

Наконец, запустите блокчейн:

./aschd start

Теперь откройте свой любимый браузер и введите localhost:4096/api/blocks

Здесь вы можете проверить последний блок, новый блок генерируется каждые 10 секунд. Попробуйте обновить браузер несколько раз.

Остановить блокчейн

./aschd stop

Аккаунт Genesis (основная сеть)

Учетная запись Genesis - это учетная запись, на которой изначально находятся все деньги блокчейна основной цепи. На этом счету сотни миллионов XAS (наша стандартная валюта).

{
  "address": "ABuH9VHV3cFi9UKzcHXGMPGnSC4QqT2cZ5",
  "publicKey": "116025d5664ce153b02c69349798ab66144edd2a395e822b13587780ac9c9c09",
  "secret": "stone elephant caught wrong spend traffic success fetch inside blush virtual element" // password
}

Доступ к блокчейну

Вы можете отправлять деньги и управлять локальным блокчейном через командную строку с помощью asch-cli, но может быть приятнее работать с графическим интерфейсом для управления своей учетной записью. У вас есть варианты. Представлю оба варианта:

Доступ к блокчейну с помощью интерфейса командной строки

Asch-cli предлагает больший контроль над локальной цепочкой блоков, чем графический интерфейс. Все доступные опции документированы здесь.

Установите интерфейс командной строки

Установите asch-cli:

npm install --global asch-cli

Пример командной строки

Используйте секрет учетной записи Genesis для доступа к локальной цепочке блоков.
Чтобы этот пример работал, локальная цепочка блоков должна быть уже запущена (./aschd start).

asch-cli openaccount "stone elephant caught wrong spend traffic success fetch inside blush virtual element"
# server response:
{
  "address": "ABuH9VHV3cFi9UKzcHXGMPGnSC4QqT2cZ5",
  "unconfirmedBalance": 10000000000000000,
  "balance": 10000000000000000,
  "publicKey": "116025d5664ce153b02c69349798ab66144edd2a395e822b13587780ac9c9c09",
  "unconfirmedSignature": false,
  "secondSignature": false,
  "secondPublicKey": "",
  "multisignatures": [],
  "u_multisignatures": [],
  "lockHeight": 0
}

Заключение

Мы узнали, как установить собственный локальный блокчейн Asch, и запустили его впервые.

Во второй части мы узнаем, как создать собственный сайдчейн.

Переходите к Части 2 прямо сейчас

Подробнее о ASCH:

Сайт: https://www.asch.io/

Github: https://github.com/AschPlatform

Telegram: https://t.me/aschEnglish

Twitter: https://twitter.com/Asch_io

ASCH BBS: https://bbs.asch.io/

Facebook: https://www.facebook.com/AschHQ/

Reddit: https://www.reddit.com/r/Asch_Platform/

Чат Gitter: https://gitter.im/asch-development

Присоединяйтесь к нашему сообществу авторов!