Обзор Fuel: операционной системы для роллапов Ethereum
Когда проект запустился, меня прям раздражало, что требуется ставить другой кошелёк...
Почему ОС для роллапов не поддерживает известные кошельки...
Но сравнительно недавно они добавили EVM кошельки: стало проще...
В статье проведу экспресс-аудит проекта и покажу функционал.
Оглавление
Аудит
Команда
На сайте и в доках инфы не нашёл, но в чате отправили её.
3 тысячи отслеживающих, публикации - это то, чем поделились .
Люди:
Руководитель отдела роста Arjun Krishan Kalsy:
20 749 отслеживающих, последний пост 9 месяцев назад.
- В Fuel Labs Chief of Growth с декабря 2023.
- В Mantle Network Head of Ecosystem с января по ноябрь 2023
- В Polygon Labs Vice President - Growth с сентября 2020 по ноябрь 2022 года
- В TELUS International AI Data Solutions Engagement Manager с июня 2019 по август 2020
- В Tech Mahindra Product Manager с января 2018 по май 2019
И Program Manager - Strategic Initiatives с мая 2016 по декабрь 2017 - А также другие (всего 11).
Учился в Indian School of Business: Master of Business Administration (M.B.A.), Marketing & Strategy с 2015 по 2016.
И в Manipal Institute of Technology: Bachelor of Engineering (B.E.), Information Technology с 2005 по 2009.
Всего образовательных учреждений 4, но более ранние показывать не буду уже...
- Team Management с подтверждением от специалиста в этой области и от трёх коллег по Infosys, всего 42 подтверждения
- Pre-sales - 3 подтверждения по компании Oracle, 38 подтверждений
- Enterprise Software - 31 подтверждение
- Business Development - 17 подтверждений
- Sales Operations - 8 подтверждений
- Software Development - 7 подтверждений
- Cloud Computing, Business Intelligence - 6 подтверждений
- Sales Process - 5 подтверждений
- Digital Strategy, Strategic Planning, Business Concept Development, Blockchain, Product Management, Program Management - 2 подтверждения
После изучения итог по человеку: специалист, работал в интересных компаниях...
Финансовый директор Группы Mo Yang CPA CA CFA:
4 458 отслеживающих, последняя публикация 19 часов назад. Получила 173 реакции и 14 комментариев.
Предыдущий пост 1 день назад, 173 реакции, 13 комментариев и 1 репост.
- В Architect Chief Financial Officer с апреля 2024
- В Stablecorp Inc. Chief Financial Officer с января 2024
- В Fuel Labs Group Chief Financial Officer с апреля 2023, а до этого Advisor с 2021 по апрель 2023
- В The Accountant Quits с января 2023
- В Convoy Finance Partner с 2019
- В Polymath Group CFO - Head of Finance - Tokenization platform - POLY & POLYX с 2018 по июнь 2022
- В CoinFlip Director - Consultant с февраля 2021 по апрель 2022
- В MavTek Vice-President Finance & Corporate Development с 2016 по 2018
- И другое (всего 14)
Учился в York University - Osgoode Hall Law School: Faculty member - continuing education, Lecturer - Accounting and Tax.
В Concordia University : Master of Advanced Studies, Accounting and Finance, а также Bachelor of Commerce (B.Com.).
Получил сертификат CFA Institute (CFA Chartholder) в декабре 2015 и Chartered Professional Accountants of Canada (CPA Canada) (Chartered Professional Accountant (CPA)) в сентябре 2009.
- CaseWare Software, Corporate Tax - Senior Auditor в компании BDO Canada
- Hedge Accounting, Middle Office Operations, Mortgage-Backed Securities (MBS) - Financial Analyst в компании National Bank of Canada
- И другие (всего 72).
Очень много компании для должности финансового директора (ну как я считаю, будучи не специалистом).
Плюс же в наличии сертификатов (если они хорошие).
Старший партнер по поиску талантов Ashley Osmond:
4 783 отслеживающих, последняя публикация 2 месяца назад.
- В Fuel Labs Senior Talent Partner с апреля 2024
- В Trifecta Talent Co-Founder с июля 2023
Freelance Writer с апреля 2017 - В YAVICA Head of Recruitment с мая 2023 по апрель 2024
- В SKG Services Europe Head of Recruitment с мая 2023 по апрель 2024.
- И другое (всего 12).
Учился в Millikin University с 2000 по 2004.
- Sourcing - 3 подтверждения
- Negotiation, Executive Search - 3 подтверждения
- Technology Recruitment, Full-life Cycle Recruiting, Global Talent Acquisition (1 подтверждение) - Senior Talent Acquisition Specialist в компании Fonoa
- И другие (36 всего)
По информации достаточно хороший профессионал.
Также список участников команды есть в Cryptorank:
Есть имена, ссылки на соцсети.
Например, вот John Adler:
- Co-Founder and Chief Scientist в Fuel Labs с января по февраль 2023, а до этого Co-Founder and Chief Technology Officer с января 2021 по январь 2023, до этого - Co-Founder and Research Advisor с января по декабрь 2020.
Т. е., как понимаю, в этом году в компании не работает... - Сейчас же Advisor в Essential с марта 2023.
- В Celestia Labs Co-Founder and Chief Research Officer с января 2020: очен.
- В Consensys Applied Researcher & Development Engineer с марта 2019 по январь 2020, Blockchain Researcher с сентября 2018 по февраль 2019
- Teaching Assistant в University of Toronto с сентября 2016 по август 2018
- Другое (13)
Подробно не вижу смысла его рассматривать...
Главный операционный директор Florian Hunziker:
Работает с августа 2023 по настоящее время.
- Director of Business Operations в Meta с 2019 по 2023
- Chief Operating Officer в WorkBoard с 2018 по 2019
- Vice President, Head of Third Party Relations and Developer Technology Groups в Sony Interactive Entertainment с 2017 по 2018, а также Strategy and Operations Consultant с 2015 по 2017
- И другое (всего 10)
1 233 отслеживающих, есть только 1 комментарий.
Учился в Stanford University Graduate School of Business: Masters Business Administration.
В University of California, Berkeley: BSBA, Business Administration.
Получил сертификат от WorkBoard: OKR Expert в апреле 2019.
- Cross-functional Team Leadership, Organizational Leadership, Operations Management, Partner Relationship Management - Director of Business Operations в компании Meta
- Business Development - 38 подтверждений
- Strategic Partnerships - 39 подтверждений
- Strategy - 34 подтверждения
- Start-ups - 21 подтверждение
- Business Strategy - Director of Business Operations в компании Meta, 14 подтверждений
- Digital Media - 12 подтверждений
- Product Management - 5 подтверждений
- И другие (всего 18)
Технический директор Brandon Kite:
778 отслеживающих, публикаций нет.
- В Fuel Labs Chief Technology Officer с апреля 2023, а до этого был Senior Software Engineer с октября 2021 по апрель 2023
- В Transparent Financial Systems был Senior Software Engineer с апреля 2019 по октябрь 2021
- В Bob's Repair был Chief Technologist с 2018 по 2019, Chief Blockchain Technologist с мая по декабрь 2018
- В Dragonchain Blockchain Engineer с сентября по декабрь 2017
- И другое (всего 9)
Учился в University of Washington: Bachelor of Science, Applied and Computational Math Sciences - Discrete Math and Algorithms с 2011 по 2013.
А до этого в Yakima Valley Community College, Yakima WA с 2008 по 2010.
- Java - 7 подтверждений
- JavaScript - 6 подтверждений
- Python - 4 подтверждения
- Software Engineering - 2 подтверждения
- Web Development - 4 потверждения
- И другие (27 всего)
Руководитель сообщества и инженер-программист Ruben Amar:
3 351 отслеживающий, последняя публикация 2 недели назад с 36 реакциями, двумя комментариями. Предыдущий пост получил 64 реакции, 6 комментариев и 8 репостов.
- В Fuel Labs Community Lead & Software Engineer с марта 2022
- В YuzuSwap Strategic Advisor с марта 2022 по май 2023, а до этого - Head of Community & Business Developer с ноября 2021 по февраль 2022
- В Oasis Social Media Manager с января 2021 по сентябрь 2022, а до этого Business Developer с нроября 2021 по февраль 2022
- В Altice Group Data Product Owner с сентября 2021 по февраль 2022
- В Radware Business Intelligence Developer and Data Scientist с июня по август 2020 (стажировка)
- Всего 12 компаний.
Учился в ESILV - Ecole Supérieure d'Ingénieurs Léonard de Vinci: Master of Engineering - MEng, Data and Artificial Intelligence с 2015 по декабрь 2020.
А также в ESSEC | Télécom Paris - MS® Management des Systèmes d’Information en Réseaux (MSIR) с октября 2021 по декабрь 2022.
В октябре 2021 LinkedIn выдал сертификат Blockchain Basics.
Также получил сертификат Сертифицированный Azure Devops в Pentalog HR в октябре 2020.
(всего лицензий и сертификатов 6).
Руководитель отдела продукции Kalle Moen:
786 отслеживающих, публикаций нет.
- Head of Product в Fuel Labs с марта 2023
- Product Manager в Immunefi с января 2021 по февраль 2022, а также Co-Founder с октября 2019 по сентябрь 2020
- В I Will Teach You To Be Rich: Engineering Manager с ноября 2018 по октябрь 2019, Senior UI/UX Designer с июля 2017 по ноябрь 2018, Optimization Manager с июня 2016 по июль 2017
- Другое (всего 4)
Учился в Kristiania: Associate’s Degree, Digital Marketing & Communication с 2013 по 2015.
- В American Management Association: Management Skills for New Managers в феврале 2017
- Google adwords - Google, Social Marketing Tools
- Digital Marketing - 20 подтверждений
- User Interface Design - 5 подтверждений
- Conversion Optimization - 4 подтверждения
- Agile Project Management, HTML/CSS, Python - 1 подтверждение
- SEO - 5 подтверждений
- User Experience Design - 4 подтверждения
- И другие (всего 18)
Руководитель отдела по связям с разработчиками Camila Ramos:
6 829 отслеживающих, публикаций нет.
- В Fuel Labs: Head of Developer Relations с июля 2022
- Founder в STANK с 2018
- Developer Relations Engineer в The Graph Protocol с ноября 2021 по июль 2022
- В PlanetScale Developer Advocate с августа по декабрь 2021
- В PayPal: Software Engineer с августа 2020 по август 2021, Software Engineer Intern с июня 2020 по сентябрь 2020 (Стажировка)
- И другое (всего 9)
Учёба в California State University - East Bay: Bachelor of Science - BS, Computer Science с 2019 по 2021.
В Chabot College: Bachelor of Science - BS, Computer Software Engineering с 2017 по 2019.
- 3D Printing - 4 подтверждения
- Laser Cutting - 11 подтверждений
- JavaScript - 15 подтверждений
- Educational Leadership, HTML, English to Spanish, Entrepreneurship - 6 подтверждений
- Event Planning - 13 подтверждений
- Nonprofit Organizations - 5 подтверждений
Соцсети проекта
363 тысячи читателей, последний пост 19 июля... Он получил 28 ответов, 88 репостов, 394 лайка, 43683 просмотров.
Пост до него - 1 ответ и репост, 27 лайков, 8463 просмотров.
Предыдущий - 2 ответа и репоста, 24 лайка, 8142 просмотров.
Активность небольшая, но есть.
Score 1193, level 4 (Significant).
Подписавшиеся проекты: @rarible, @SuperchiefNFT, @DefiantNews, @defipulse, @graphprotocol, @bobanetwork, @MilkRoadDaily, @TornadoCash, @lightclients, @token2049 и другие...
Венчурный капитал: Meltem Demirors, CoinShares, 찌 G 跻 じ MBA, CFA, FRM, CFP, NGMI, HFSP, HENTAI 🛡️, eGirl Capital 仙女資本, Arthur, DeFiance Capital и другие...
В обновлениях тоже последний пост 19 июля.
В основном чате есть активность и сейчас:
Модераторы отвечают на вопросы.
В Русскоязычном чате тоже есть активность:
2,6К подписчиков, последний пост 5 месяцев назад... 5 комментариев, 69 лайков.
У предыдущего поста 1 ответ и 45 лайков...
Есть Youtube:
Последнее видео 3 месяца назад, а предпоследнее было 4 месяца назад - в целом редко публикуют...
Активен, на вопросы модераторы отвечают.
Итог по команде
Оценка 5 из 5: в списке участников команды LinkedIn мало профилей со ссылками, но благодаря Cryptorank смогли получить представление о профессионализме команды; В Discord и Telegram чате активность есть, и на вопросы отвечают.
Концепт
Fuel — это операционная система, специально разработанная для Ethereum Rollups. Она позволяет решать проблемы параллелизма, минимизации состояния и интероперабельности (PSI) без жертв.
FuelVM заимствует идеи из экосистемы Ethereum и реализует улучшения, которые долгое время предлагались для виртуальной машины Ethereum (EVM), но не могли быть внедрены из-за необходимости поддерживать обратную совместимость. Эти улучшения включают параллельное выполнение транзакций и поддержку множества нативных активов.
Fuel обеспечивает непревзойденную вычислительную мощность благодаря возможности выполнять транзакции параллельно, используя строгие списки доступа к состоянию в форме модели UTXO. Полные ноды Fuel определяют учетные записи, затрагиваемые транзакцией, и выявляют зависимости перед выполнением. Это позволяет Fuel использовать гораздо больше потоков и ядер вашего процессора, которые обычно простаивают в однопоточных блокчейнах. В результате Fuel может обеспечивать гораздо больше вычислений, доступов к состоянию и пропускной способности транзакций, чем его однопоточные аналоги.
Fuel предоставляет мощный и элегантный опыт разработки с использованием собственного специализированного языка (DSL) под названием Sway. Sway основан на языке Rust и включает синтаксис для работы с виртуальной машиной блокчейна без излишне подробного шаблонного кода. Sway был создан вместе с FuelVM и предназначен для высокопроизводительной среды Fuel.
Sway приоритизирует анализ на этапе компиляции и безопасность, подобно механизму проверки заимствований и семантике безопасности Rust. Кроме того, он имеет синтаксис Rust. От Solidity Sway взял концепцию языка для программирования смарт-контрактов с встроенным хранением контрактов на верхнем уровне и механизмами блокчейна для удобного и безопасного программирования контрактов.
Sway вводит концепцию статического аудита в смарт-контракты. Кроме того, Sway обладает высокой производительностью, имеет расширяемые оптимизационные проходы и модульный бэкенд для таргетирования различных архитектур блокчейна.
Источник - документация:
Итог по концепту
Оценка 3 из 5: кажется излишним создание своей виртуальной машины со своим языком программирования. Достаточно сделать максимально настраиваемую систему для построения роллапов, а уже за счёт них реализуется масштабирование: делать собственный язык и VM для этого нет смысла...
Коин
Токеномики нет. Более того: в правилах чатов написано, чтоб не писали про токен, токеномику и аэрдроп, т. к. информация ещё публично не размещена.
По данным Cryptorank, проект собрал 81,5 МЛН $ с оценкой 1 МЛРД $ от Blockchain Capital, The Spartan Group, CoinFund, Fenbushi Capital, Maven 11 Capital, Bain Capital Crypto, Stratos Technologies, Dialectic Capital, TRGC, Origin Capital и других:
Есть также поинты. Об этом написана статья в Mirror:
В обмен на внесение активов вы получите Fuel Points, которые накапливаются ежедневно. Зачисленные на ваш счет баллы можно отслеживать через портал.
Ранние вкладчики смогут заработать больше баллов по мере развития программы, а также получить дополнительные поощрения и более высокие вознаграждения за лояльность после запуска основной сети.
Активы, которые в настоящее время имеют право на участие в программе: ETH, WETH, weETH, eETH, rsETH, rETH, wbETH, rstETH, amphrETH, USDT, USDC, USDe, sUSDe, rsUSDe, wstETH, stETH, ezETH, pzETH, Re7LRT и steakLRT.
Обратите внимание, что для stETH и eETH вы можете обернуть токены в их обернутые версии wstETH и weETH соответственно, а затем внести их в смарт-контракт на самом портале Points. Аналогичным образом вы можете развернуть токены при выводе на портале Points.
Участники будут зарабатывать от 1,5 до 3 баллов в день за каждую внесенную сумму в долларах, умноженную на сумму (т. е. множитель) в зависимости от актива. Множители могут меняться со временем (изменения будут сообщены через @fuel_network на X). Внося вклад заранее, вы со временем накопите больше баллов.
Участники могут зарабатывать 1,5 балла в день за каждый доллар, внесенный на следующие активы: ETH, WETH, weETH, eETH, rsETH, rETH, wbETH, USDT, USDC, USDe, sUSDe, wstETH и stEth.
Участники могут зарабатывать 3 балла в день за каждый доллар, внесенный на следующие активы:
Стоимость в долларах США определяется почасовой ценой этого актива через ценовой оракул, выбранный командой по собственному усмотрению (например, API DeFiLlama). Затем баллы рассчитываются из стоимости в долларах США депонированных активов каждый час.
- Если пользователь вносит 1 ETH, когда цена составляет 3500 долларов США, он получит 3500 × (1,5/24) = 218,75 баллов за этот час.
- Если цена ETH подскочит до 4000 долларов США в течение следующего часа, пользователь получит 4000 × (1,5/24) = 250 баллов и так далее за каждый час.
Снятие любых предварительно внесенных средств до запуска Fuel Mainnet приведет к потере связанных с ним Fuel Points. Баллы также могут быть утрачены из-за нарушения Условий обслуживания или несоответствия указанным критериям соответствия.
Ваши баллы отобразятся на портале программы баллов в течение 24 часов с момента внесения.
Программа будет развиваться после запуска mainnet. Ранние вкладчики могут зарабатывать баллы за действия после запуска основной сети, с возможностью дополнительных поощрений и более высоких наград за лояльность.
Оценка 4 из 5 из-за отсутствия токеномики...
Код
Есть целых 134 репозитория!:
Круто, что кода открытого много!
Выделил 12 репозиториев, поэтому пройдёмся по ним быстренько...
Последний коммит 2 часа назад, всего 2,917 коммитов:
Последний коммит 6 часов назад, всего 1,324 коммита:
Последний коммит на прошлой неделе, всего 202 коммита:
Кошелёк для работы с блокчейном. Последний коммит на прошлой неделе, всего их 545:
Последний коммит 3 недели назад, всего 793 коммита:
FuelLabs/fuel-block-committer:
Сервис, передающий данные из роллапа в L-1 / DA.
Последний коммит на прошлой неделе, всего 39 коммитов:
Реализация полной ноды протокола Fuel v2 на Rust.
Последний коммит 2 дня назад, всего 962 коммита:
Последний коммит 3 недели назад, всего 198 коммитов:
FuelLabs/EVM-Wallet-Connector:
Для подключения EVM кошельков к проектам на Fuel.
Последний коммит 2 недели назад, всего 119 коммитов:
Последний коммит 3 дня назад, всего 772 коммитов:
Репозиторий аудитов проекта. Последний коммит в прошлом месяце, всего 4 коммита:
В папке "preliminary_findings" можно найти и другие файлы:
Радует, что подробно всё и открыто!
Итог по коду
Оценка 5 из 5: репозиториев много, открытого кода тоже много, разработка периодически ведётся (многое обновлялось недавно).
Документация
Первую страницу показывал в концепте:
Начните работу с Fuel и найдите способ, который наилучшим образом соответствует вашим потребностям.
На странице представлены ссылки на инструкции по быстрому запуску для разработчиков смарт-контрактов, Разработчиков Frontend / Fullstack, операторов нод.
Например, вот Smart Contract Quickstart:
Язык сложноват для восприятия теми, кто работал с JS & Solidity...
Frontend / Fullstack Developer:
Фронтенды, естественно, взаимодействуют со смарт-контрактами Fuel.
Это руководство предназначено для того, чтобы быстро познакомить вас с процессом запуска локальной ноды для блокчейна Fuel.
В контексте блокчейна Fuel нода, часто называемая "клиентом", представляет собой часть программного обеспечения, которая загружает и поддерживает копию блокчейна Fuel. Она проверяет подлинность каждого блока и транзакции, гарантируя, что ваша копия всегда актуальна и синхронизирована с сетью.
Бета-тестнеты сети Fuel работают на консенсусном механизме Proof of Authority (PoA). Вот краткий обзор:
Валидаторы: В PoA валидаторами, или "авторитетами", являются конкретные сущности, которым поручено создание новых блоков и валидация транзакций. В отличие от других механизмов консенсуса, таких как Proof of Work (PoW) или Proof of Stake (PoS), где валидаторы выбираются на основе вычислительной мощности или доли, валидаторы в PoA отбираются на основе их репутации и надежности в сети.
Преимущества PoA: PoA обеспечивает более быстрое время обработки транзакций и требует меньше вычислительных ресурсов, что делает его энергоэффективным. Безопасность и целостность сети поддерживаются за счет надежности выбранных валидаторов.
Запуск собственной ноды предоставляет несколько преимуществ:
1. Свобода запросов: Хостинг собственной ноды позволяет выполнять большее количество запросов без ограничения по количеству.
2. Независимость от сети: Наличие собственной ноды гарантирует, что вы не зависите от сторонних сервисов, предоставляя полный контроль над взаимодействием с блокчейном Fuel.
Переходим далее в intro - Fuel Glossary:
- Fraud proofs — это механизм верификации блокчейна, при котором блок принимается, если в течение настраиваемого времени не будет предоставлено доказательство его недействительности. Протокол Fuel и FuelVM спроектированы так, чтобы быть устойчивыми к мошенничеству в ограничительных средах, таких как Ethereum Virtual Machine.
- Fuelup — это официальный тулчейн и менеджер пакетов для инструментов Fuel.
- fuel-core — это реализация клиента Fuel.
- Закрытый кошелек (locked wallet) — кошелек, который может взаимодействовать только с методами смарт-контрактов, доступными для чтения.
- Monolithic - однослойная архитектура блокчейна, обрабатывающая выполнение, расчеты, консенсус и доступность данных одновременно на одном слое.
- Атака на повторный вход - тип атаки, при котором злоумышленник может рекурсивно вызвать функцию контракта, так что функция завершится до полного выполнения. Это может привести к тому, что злоумышленник сможет вывести больше средств, чем предполагалось, из контракта.
Я уже показывал некоторые страницы из этого раздела.
Predicates 101: Building Stateless DeFi Applications:
Предикаты — это подход Fuel к абстракции аккаунтов без состояния. В блокчейн-пространстве мы постоянно сталкиваемся с экспоненциальным ростом объема состояния, что в долгосрочной перспективе просто неустойчиво. В экосистеме Ethereum каждый развернутый контракт требует хранения состояния на блокчейне на неопределенный срок. Для улучшения масштабируемости блокчейнов необходимо рассмотреть различные подходы к переопределению минимизированных по состоянию приложений, которые являются основой децентрализованных финансов.
Этот туториал специально сосредоточен на типе программ предикатов, одном из четырех типов программ в языке Sway, и на том, как можно решить эту растущую проблему.
Чтобы определить предикаты в одном предложении:
"Предикаты — это безсостоячные программы, которые возвращают true или false".
Предикат представлен типом Address, идентичным любому EOA (Externally Owned Account), созданному с помощью приватного ключа. Байт-код программы может быть детерминированно хеширован и представлен как обычный адрес, все это вычисляется оффчейн. Поэтому, когда этот адрес содержит активы, ЛЮБОЙ может потратить активы, заблокированные за предикатом, если он сможет оценить предикат как истинный. Полезно думать о коде как о приватном ключе к кошельку.
Подробности на дочерних страницах, которые не буду показывать, т. к. это специфическая тема (мало кому понятная).
Introduction to Sway for JavaScript developers:
Если вы знакомы с JavaScript и имеете базовое понимание основ блокчейна, вы сможете быстро освоить создание полнофункциональных децентрализованных приложений на Fuel с использованием Sway. После освоения основ Sway вы сможете начать создавать свои собственные dapp.
В этом туториале создают контракт на Sway для онлайн-рынка, похожего на Amazon, где:
В этом туториале ваше внимание будет сосредоточено на типе программ контрактов, одном из четырех типов программ, присущих языку Sway.
Подробности по работе с JS описаны на страницах раздела, которые пропустим.
Пример реализации взаимодействия со Sway смарт-контрактом Counter в DApp с использованием React.
Этот гайд поможет вам установить бинарные файлы инструментов Fuel и необходимые зависимости.
Гайд охватывает следующие темы:
- Установка инструментов Fuel с использованием fuelup
- Изменение вашей стандартной инструментальной цепочкиНастройка локального кошелька
- Установка Rust
Это первая страница раздела о Sway: только её и рассмотрим, т. к. остальное - для разработчиков.
Sway - это специализированный язык программирования для реализации смарт-контрактов на блокчейн-платформах, в первую очередь для Fuel Virtual Machine (Fuel VM). Вдохновленный подходом Rust к системному программированию, Sway стремится внедрить современные функции и инструменты в разработку смарт-контрактов, сохраняя при этом производительность, тонкий контроль и активно используя статический анализ для предотвращения распространенных проблем с безопасностью.
Sway специально разработан для использования в блокчейн-среде, которая ведет себя очень отличающимся образом от традиционных компьютеров. Этот специализированный дизайн позволяет принимать правильные решения о компромиссах на каждом уровне стека, что позволяет писать быстрые, безопасные и экономичные смарт-контракты с функциями, подходящими для ваших конкретных потребностей.
Другие ответы на вопросы смотрите на странице.
Назначение библиотек Sway — это предоставление библиотек, которые пользователи могут импортировать и использовать, и которые не являются частью стандартной библиотеки. Эти библиотеки содержат вспомогательные функции и другие инструменты, ценные для разработки блокчейн-приложений.
Примечание: Sway — это язык, находящийся в стадии активной разработки, поэтому библиотеки могут быть не самыми эргономичными. Со временем они будут получать обновления и улучшения, чтобы демонстрировать, как Sway может использоваться в реальных сценариях.
Подробнее о них в подстраницах раздела...
Репозиторий стандартов Sway предназначен для хранения стандартов языка Sway, которые пользователи могут импортировать и использовать. Стандарты в этом репозитории могут находиться на разных стадиях разработки. Применение черновиков стандартов и предоставление обратной связи по предложенным стандартам приветствуется. Чтобы использовать черновик, найдите стандарт с помощью соответствующего ярлыка на GitHub и реализуйте стандартный ABI в вашем контракте.
Если вы не нашли необходимый стандарт, не стесняйтесь создать issue и предложить новый стандарт!
Введение в Sway с простыми примерами.
На странице Solidity найдёте то, что совпадает в Sway с Solidity. А далее примеры: Hello Sway (аналог Hellow world), переменные, Primitive Types и пр...
Fuel TypeScript SDK предоставляет методы и утилиты на TypeScript для разработки и взаимодействия с сетью Fuel и её экосистемой. Используя SDK, вы можете:
- Развертывать, взаимодействовать с Fuel и тестировать контракты Sway.
- Настраивать dApp и локальную среду разработки с помощью CLI.
- Генерировать и импортировать кошельки из приватных ключей, мнемонических фраз или JSON и безопасно хранить их на клиенте.
- Создавать пользовательские транзакции, модифицировать их, добавляя ресурсы, политики и подписанты, и отправлять их.
- Генерировать типы для программ Sway с помощью `typegen` для обеспечения полной типовой безопасности.
Подробности на соответствующих страницах раздела.
Fuel Rust SDK можно использовать для различных задач, включая:
• Компиляцию, развертывание и тестирование контрактов Sway.
• Использование тестовой сети или запуск локального узла Fuel.
• Создание и подпись транзакций с помощью кастомных скриптов или вызовов контрактов.
• Генерацию безопасных по типам привязок Rust к методам ABI контрактов.
Эта книга является обзором различных возможностей, которые можно реализовать с помощью Rust SDK, и инструкцией по их реализации. Имейте в виду, что и SDK, и документация находятся в стадии разработки!
Подробности на страницах раздела.
Это SDK кошелька Fuel, позволяющий взаимодействовать с ним: отправлять транзакции и пр.
На странице, скриншот которой показываю, установка. Далее - обзор остального функционала.
API GraphQL от Fuel позволяет запрашивать различные данные блокчейна Fuel. С его помощью можно получать информацию о транзакциях, балансах, блоках и других данных. Также API можно использовать для симуляции и отправки транзакций в сети Fuel.
Playground — это интерактивная и графическая среда разработки, которая включает справочник по запросам, мутациям и типам. Она также предоставляет валидацию запросов и контекст для схемы GraphQL.
Вы можете протестировать Playground для API GraphQL от Fuel здесь:
https://testnet.fuel.network/v1/playground
https://testnet.fuel.network/v1/graphql
Остальное - на страницах раздела.
Forc:
Forc расшифровывается как Fuel Orchestrator. Forc предоставляет набор инструментов и команд для разработчиков, работающих с экосистемой Fuel, таких как создание нового проекта, форматирование, выполнение скриптов, развертывание контрактов, тестирование контрактов и многое другое. Если вы знакомы с Rust, forc аналогичен cargo.
Если вы новичок в Forc, ознакомьтесь с разделом введения в проект Forc.
Для подробного обзора команд CLI Forc, смотрите раздел Команды.
В JS, если знакомы с ним, это аналог npm.
Подробности использования на соответствующих страницах.
Fuel: Безопасный децентрализованный обобщённый масштабируемый реестр транзакций
Эта книга описывает протокол Fuel, включая Fuel Virtual Machine (FuelVM) — чрезвычайно быструю проверяемую виртуальную машину блокчейна.
- Формат транзакции
- Идентификаторы вычислений — Вычисление уникальных идентификаторов для транзакций, контрактов и UTXO.
- Правила действительности транзакций — Определение правил действительности транзакций.
- Криптографические примитивы — Криптографические примитивы, используемые в Fuel.
- Интерфейс бинарного приложения (ABI) — Низкоуровневые детали взаимодействия с байт-кодом Fuel.
- Инициализация слотов хранения — Формат JSON для инициализации слотов хранения контракта.
- Формат заголовка блока — Формат заголовка блока Fuel.
- Релеер/Мост — Протокол релеера/моста Fuel.
- Обзор — Описание FuelVM на высоком уровне, от архитектуры до процесса инициализации.
- Набор инструкций — Определение набора инструкций FuelVM.
- Proof of Authority (PoA) — Сеть Fuel на основе Proof of Authority.
- Разреженное дерево Меркла — Набор тестов для проверки правильности выводов разреженного дерева Меркла.
Описаны способа внесения вклада в Fuel.
Внешние ссылки
Отдельная документация для библиотеки.
Репозиторий с примерами приложений.
Здесь можно работать с Sway кодом, компилировать его и пр...
Различные примеры кода на Sway.
Здесь можно ввести Fuel адрес, и получить тестнет токены.
Итог по документации
Оценка 4 из 5: всё подробно, но я бы считал скорее отдельным блокчейном, никак не связанным с Ethereum роллапами, потому что связь эта не показана в документации...
Практика
Кошелёк
Подключаясь в основном приложении, выбираем Fuel wallet, либо переходим по этой ссылке расширения:
"Установить" и ставим. Открывается кошелёк:
Принимаем условия, отметив галочку, и жмём "Next: Seed Phrase":
Копируем и сохраняем надёжно, отмечаем "Confirm Saved" и кликаем по "Next: Confirm phrase":
Вставляем все слова и переходим по "Next: Your password":
Вводим пароль, "Next: Finish set-up":
Добавлять нам не нужно - идём дальше.
Стандартное место управления аккаунтами.
В меню настроек нет ничего интересного и нужного.
Под кнопкой меню найдём аккаунт 1 с адресом - копируем. У меня это 0xf18c347ca42dec41a94d237557a7f52b1666923b86da5718275a3f0a214806e1.
И отправляем на него средства.
Кнопка "Faucet" переводит на страницу https://faucet-testnet.fuel.network/?address=0xf18c347ca42dec41a94d237557a7f52b1666923b86da5718275a3f0a214806e1
Т. е. с адресом (у вас будет свой url):
Отмечаем галочки, в т. ч. капчу и "Give me Test Ether":
Успешно. Идём в кошелёк, и видим:
Теперь можем отправить, нажав "Send Button":
В "Transaction History" можем посмотреть транзакции:
Основное приложение - https://app.fuel.network/:
По ссылке "Community" попадёте на форум:
На главной же или по ссылке Explorer можете смотреть транзакции. Например, нажму по первой:
Bridge
Почему-то не добавили поддержку EVM, что странно, т. к. заявляли об этом, и в некоторых приложениях поддержка реализована, но что есть то есть...
"Connect" и указываю сумму на странице:
"Deposit" и подтверждаем в кошельке. Ждём:
Придётся подождать долго, т. к. мост работает медленно...
В "Transaction history" можем посмотреть историю транзакций:
И видим по шагам, что всё завершено.
Можем вывести, перейдя к "Withdraw Tab":
Заполняете сумму, "Withdraw" и подтверждаете в кошельке Fuel. Всё - ждём:
Видим, что через 7 дней вывод продолжится:
Экосистема
Можно отфильтровать по категориям, например, выберу DeFi:
Пример 1: Sway farm
Пример 2: Fuel name service:
Только один кошелёк: Fuelet Wallet. Ставлю его.
В плане создания единственное отличие в том, что для разблокировки не пароль, а код из 6 чисел.
Итак, выбираем кошелёк в подключении к Fuel name service:
"Connect" - подключились. Вводим домен. Принимаем условия, нажав по соответствующей кнопке, а затем вводим желаемое, кликаем по "Search":
Если свободен, будет кнопка регистрации (я увеличил до трёх лет, поэтому "Register for 3 years"). Отмечаем капчу Recaptcha и жмём по кнопке:
Можно изменить адрес владельца и сделать основным ("Use as a primary name"), а также посмотреть, когда истекает срок действия.
Получаем поинты за депозит
Переходим по ссылке https://app.fuel.network/earn-points/deposit/
Выбираем EVM кошелёк, подключаем...
Список токенов с возможностью депозита:
Видим балансы с кнопками "Deposit".
Согласно списку токенов с наибольшими поинтами с 19 июля по 2 августа выбираю pzETH (покупаю его):
Отмечаем галочки и жмём "Next: Deposit":
Заполняем сумму, "Approve pzETH" и утверждаем в кошельке. После:
Нажимаю "Deposit pzETH" и подтверждаю в кошельке. Всё:
Появилась кнопка вывода, а пополнение стало называться "Deposit More". Покажу форму вывода:
Сначала предупреждают, что поинты будут потеряны.
Вводите сумму и нажимаете "Withdraw pzETH" (вместо pzETH ваш токен).
Также на странице потом увидете поинты, а уже сейчас - TVL.
Перейдя в Leaderboard, можем посмотреть рейтинг:
В FAQ - ответы на вопросы по points program, но это просто переход к разделу на странице:
Итог по практике
Оценка 4 из 5: функционал хороший, экосистема есть, но некоторые проекты не работают или в разработке...
Общий итог
- Команда: в списке участников команды LinkedIn мало профилей со ссылками, но благодаря Cryptorank смогли получить представление о профессионализме команды; В Discord и Telegram чате активность есть, и на вопросы отвечают.
- Концепт: кажется излишним создание своей виртуальной машины со своим языком программирования. Достаточно сделать максимально настраиваемую систему для построения роллапов, а уже за счёт них реализуется масштабирование: делать собственный язык и VM для этого нет смысла...
- Коин: токеномики нет, но в остальном всё норм
- Код: репозиториев много, открытого кода тоже много, разработка периодически ведётся (многое обновлялось недавно).
- Документация: всё подробно, но я бы считал скорее отдельным блокчейном, никак не связанным с Ethereum роллапами, потому что связь эта не показана в документации...
- Практика: функционал хороший, экосистема есть, но некоторые проекты не работают или в разработке...
Всё
С вами был незрячий программист, автор https://t.me/blind_dev - подписывайтесь, чтоб получать новые обзоры, дайджесты из web3 сферы и новости по моим разработкам.
Распространяйте обзор - это для меня важно, т. к. способствует увеличению числа подписчиков.