Первоначально опубликовано — https://www.arcblock.io/en/post/2019/09/16/introduction-to-blocklets
Что такое блоклеты?
Блоклеты — это строительные блоки многократного использования, которые помогают разработчикам и пользователям сообщества создавать вещи на платформе ArcBlock. На самом простом уровне Blocklets — это готовые компоненты и модули, библиотеки, интерфейсные представления и многое другое, которые упрощают создание dApp. Просто выберите Blocklet, который вам нужен для запуска, и мгновенно установите его, чтобы приступить к работе. Одной из ключевых особенностей Blocklets является то, что очень легко комбинировать несколько блоков для создания более сложного приложения или dApp.
Блоклеты поставляются в разных пакетах в зависимости от варианта их использования, включая, помимо прочего, следующее:
- Стартовый шаблон, из которого разработчик может загрузить децентрализованное приложение, уже подключенное к блокчейну на основе кузницы, за считанные минуты;
- Полнофункциональное dApp, с помощью которого майнер или пользователь сообщества может быстро установить и запустить его;
- Смарт-контракт, который определяет конвейер бизнес-логики в цепочке и может быть развернут для подделки цепочек одним щелчком мыши;
- Веб-компоненты или сервисы для поддержки узлов ABT Blockchain
- Azure, AWS или другие готовые к облаку образцы
- и больше
На старте Blocklets будут представлены в трех вариантах — официальной, партнерской и версии для сообщества.
Что такое реестр блоклетов?
Чтобы облегчить разработчикам поиск пригодных для использования блоклетов, все блоклеты, созданные ArcBlock и разработчиками сообщества, перечислены на blocklet.arcblock.io, веб-сайте, созданном из ArcBlock/blocklets, пользователи могут искать и просматривать перечисленные блоклеты и использовать блоклет с помощью всего одной команды, этот веб-сайт называется реестром блоклетов.
Как определить блоклет?
Есть несколько ключевых элементов информации для создания блока:
❯ tree . -L 2
.
├── screenshots
│ ├── image1.png
│ ├── image2.jpg
│ └── image3.png
├── blocklet.md
├── blocklet.json
└── logo.svg
Ключевая информация: blocklet.json
Это ключевой файл при определении блока, может содержать следующие поля:
{ // Brief introduction to the blocklet "description": "A dApp starter that integrates forge-javascript-sdk and create-react-app",
// Specify the logo file of the blocklet "logo": "logo.svg",
// Can be starter|dapp|contract "group": "starter",
// Can be primary|secondary|error "color": "primary",
// provider information "provider": "ArcBlock", "documentation": "https://docs.arcblock.io", "support": "[email protected]", "community": "https://gitter.im/arcblock/cummonity",
// Charge settings "charging": { "price": 10, "receiver": "z1en6dudVmqsP1P2ZG1R8DdBZoYPnzw46T1", },
// Can the blocklet be used with another blocklet? "composable": false,
// Following fields can be inherited from package.json "name": "forge-react-starter", "version": "0.37.0", "author": "wangshijun <[email protected]> https://github.com/wangshijun", "keywords": ["arcblock", "forge", "starter", "react", "javascript"], "homepage": "https://github.com/ArcBlock/forge-dapp-starters/tree/master/packages/forge-react-starter", "repository": { "type": "git", "url": "https://github.com/ArcBlock/forge-dapp-starters/tree/master/packages/forge-react-starter" },
// Customize the install pipeline of the blocklet "hooks": { "pre-copy": "", "post-copy": "", "configure": "", "complete": "" }, "install-scripts": { "dependency": "" } }
Ключевая информация: blocklet.md
Подробное знакомство с блоклетом должно прояснить следующие вопросы для потенциального пользователя блоклета:
- Что блоклет может делать после установки? Хотя можно сделать вывод из его группы, но стоит несколько слов описания
- Каковы требования для использования этого блока? Включая оборудование, программное обеспечение, опыт и навыки разработчиков
- С какими проблемами могут столкнуться пользователи при использовании блокчейна? и как их решить?
Ключевая информация: logo.png
Логотип блока может быть любым допустимым изображением, рекомендуется png, будет отображаться на странице сведений о блокле, должно быть прозрачное изображение размером 200 x 200 пикселей.
Ключевая информация: screenshots
Папка со скриншотами должна содержать несколько изображений того, что выводит блоклет, чтобы пользователи могли легко понять идею блоклета.
Другая информация
В том числе скрипты, которые запускаются во время процесса.
Разрешение метаинформации
Чтобы избежать дублирования полей, определенных в package.json
, некоторые поля могут быть исключены из blocklet.json
, а процесс сборки достаточно умен, чтобы объединить эти поля вместе.
Как создать блокнот?
Инициализируйте конфигурацию блока с помощью forge blocklet:create
, скоро будет поддерживаться в forge-cli
.
- Как создать стартовый блок?
- Как создать блок dapp?
- Как создать блок-контракт?
Как опубликовать блоклет?
- Создайте свой блоклет и убедитесь, что он работает
- Разветвить этот репозиторий
- Измените
registry.yml
, чтобы включить свой репозиторий - Отправить запрос на включение в этот репозиторий
- Ваш блоклет будет указан в официальном реестре после того, как ваш запрос на включение будет принят и объединен.