# Обзор Fuel: операционной системы для роллапов Ethereum **Published by:** [Denis Skripnik](https://paragraph.com/@denis_skripnik/) **Published on:** 2024-07-26 **URL:** https://paragraph.com/@denis_skripnik/fuel ## Content Когда проект запустился, меня прям раздражало, что требуется ставить другой кошелёк... Просто не понимал: Почему ОС для роллапов не поддерживает известные кошельки... Но сравнительно недавно они добавили EVM кошельки: стало проще... В статье проведу экспресс-аудит проекта и покажу функционал.АудитКомандаНа сайте и в доках инфы не нашёл, но в чате отправили её. LinkedIn компании: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 CanadaHedge 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 с июля 2023Freelance 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 по февраль 2019Teaching Assistant в University of Toronto с сентября 2016 по август 2018Другое (13)Подробно не вижу смысла его рассматривать... Главный операционный директор Florian Hunziker:Работает с августа 2023 по настоящее время. Опыт работы до этого:Director of Business Operations в Meta с 2019 по 2023Chief Operating Officer в WorkBoard с 2018 по 2019Vice 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 в компании MetaBusiness 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). Навыки:Discord и Figma - 2 подтвержденияДругие (всего 49)Руководитель отдела продукции Kalle Moen:786 отслеживающих, публикаций нет. Опыт работы:Head of Product в Fuel Labs с марта 2023Product 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 в феврале 2017Google 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 с июля 2022Founder в STANK с 2018Developer 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 подтвержденийХороший профильСоцсети проектаX @fuel_network:363 тысячи читателей, последний пост 19 июля... Он получил 28 ответов, 88 репостов, 394 лайка, 43683 просмотров. Пост до него - 1 ответ и репост, 27 лайков, 8463 просмотров. Предыдущий - 2 ответа и репоста, 24 лайка, 8142 просмотров. Активность небольшая, но есть. Аудит по Tweetscout: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 и другие... Discord:В обновлениях тоже последний пост 19 июля. В основном чате есть активность и сейчас:Модераторы отвечают на вопросы. В Русскоязычном чате тоже есть активность:Форкастер: 2,6К подписчиков, последний пост 5 месяцев назад... 5 комментариев, 69 лайков. У предыдущего поста 1 ответ и 45 лайков... Есть Youtube:Последнее видео 3 месяца назад, а предпоследнее было 4 месяца назад - в целом редко публикуют... Telegram чат:Активен, на вопросы модераторы отвечают.Итог по командеОценка 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 балла в день за каждый доллар, внесенный на следующие активы:8-22 июля: ezETH19 июля - 2 августа: rstETH, amphrETH, rsUSDe, pzETH, Re7LRT и steakLRT.Стоимость в долларах США определяется почасовой ценой этого актива через ценовой оракул, выбранный командой по собственному усмотрению (например, 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 репозиториев, поэтому пройдёмся по ним быстренько... FuelLabs/sway:Последний коммит 2 часа назад, всего 2,917 коммитов:FuelLabs/fuels-ts:Последний коммит 6 часов назад, всего 1,324 коммита:FuelLabs/fuel-explorer:Последний коммит на прошлой неделе, всего 202 коммита:FuelLabs/fuels-wallet:Кошелёк для работы с блокчейном. Последний коммит на прошлой неделе, всего их 545:FuelLabs/fuel-vm:Их виртуальная машина. Последний коммит 3 недели назад, всего 793 коммита:FuelLabs/fuel-block-committer:Сервис, передающий данные из роллапа в L-1 / DA. Последний коммит на прошлой неделе, всего 39 коммитов:FuelLabs/fuel-core: Реализация полной ноды протокола Fuel v2 на Rust. Последний коммит 2 дня назад, всего 962 коммита:FuelLabs/fuel-bridge:Мост проекта. Последний коммит 3 недели назад, всего 198 коммитов:FuelLabs/EVM-Wallet-Connector:Для подключения EVM кошельков к проектам на Fuel. Последний коммит 2 недели назад, всего 119 коммитов:FuelLabs/fuels-rs:RUST SDK для Fuel. Последний коммит 3 дня назад, всего 772 коммитов:FuelLabs/audits:Репозиторий аудитов проекта. Последний коммит в прошлом месяце, всего 4 коммита:В папке "preliminary_findings" можно найти и другие файлы:В общем, изучайте. Радует, что подробно всё и открыто!Итог по кодуОценка 5 из 5: репозиториев много, открытого кода тоже много, разработка периодически ведётся (многое обновлялось недавно).ДокументацияПервую страницу показывал в концепте:Quickstart:Начните работу с Fuel и найдите способ, который наилучшим образом соответствует вашим потребностям. На странице представлены ссылки на инструкции по быстрому запуску для разработчиков смарт-контрактов, Разработчиков Frontend / Fullstack, операторов нод. Например, вот Smart Contract Quickstart:Установка и прочее... Язык сложноват для восприятия теми, кто работал с JS & Solidity... Frontend / Fullstack Developer:Используют Next.js. Фронтенды, естественно, взаимодействуют со смарт-контрактами Fuel. Node Operator:Это руководство предназначено для того, чтобы быстро познакомить вас с процессом запуска локальной ноды для блокчейна 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 - однослойная архитектура блокчейна, обрабатывающая выполнение, расчеты, консенсус и доступность данных одновременно на одном слое.Атака на повторный вход - тип атаки, при котором злоумышленник может рекурсивно вызвать функцию контракта, так что функция завершится до полного выполнения. Это может привести к тому, что злоумышленник сможет вывести больше средств, чем предполагалось, из контракта.Остальное на странице. Guides:Я уже показывал некоторые страницы из этого раздела. 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 описаны на страницах раздела, которые пропустим. Counter React Dapp:Пример реализации взаимодействия со Sway смарт-контрактом Counter в DApp с использованием React. Toolchain Installation:Этот гайд поможет вам установить бинарные файлы инструментов Fuel и необходимые зависимости. Гайд охватывает следующие темы:Установка инструментов Fuel с использованием fuelupИзменение вашей стандартной инструментальной цепочкиНастройка локального кошелькаУстановка RustSway -> about:Это первая страница раздела о Sway: только её и рассмотрим, т. к. остальное - для разработчиков. Sway - это специализированный язык программирования для реализации смарт-контрактов на блокчейн-платформах, в первую очередь для Fuel Virtual Machine (Fuel VM). Вдохновленный подходом Rust к системному программированию, Sway стремится внедрить современные функции и инструменты в разработку смарт-контрактов, сохраняя при этом производительность, тонкий контроль и активно используя статический анализ для предотвращения распространенных проблем с безопасностью. Sway специально разработан для использования в блокчейн-среде, которая ведет себя очень отличающимся образом от традиционных компьютеров. Этот специализированный дизайн позволяет принимать правильные решения о компромиссах на каждом уровне стека, что позволяет писать быстрые, безопасные и экономичные смарт-контракты с функциями, подходящими для ваших конкретных потребностей. Другие ответы на вопросы смотрите на странице. Sway Libraries:Назначение библиотек Sway — это предоставление библиотек, которые пользователи могут импортировать и использовать, и которые не являются частью стандартной библиотеки. Эти библиотеки содержат вспомогательные функции и другие инструменты, ценные для разработки блокчейн-приложений. Примечание: Sway — это язык, находящийся в стадии активной разработки, поэтому библиотеки могут быть не самыми эргономичными. Со временем они будут получать обновления и улучшения, чтобы демонстрировать, как Sway может использоваться в реальных сценариях. Подробнее о них в подстраницах раздела... Sway Standards:Репозиторий стандартов Sway предназначен для хранения стандартов языка Sway, которые пользователи могут импортировать и использовать. Стандарты в этом репозитории могут находиться на разных стадиях разработки. Применение черновиков стандартов и предоставление обратной связи по предложенным стандартам приветствуется. Чтобы использовать черновик, найдите стандарт с помощью соответствующего ярлыка на GitHub и реализуйте стандартный ABI в вашем контракте. Если вы не нашли необходимый стандарт, не стесняйтесь создать issue и предложить новый стандарт! Sway By Example:Введение в Sway с простыми примерами. На странице Solidity найдёте то, что совпадает в Sway с Solidity. А далее примеры: Hello Sway (аналог Hellow world), переменные, Primitive Types и пр... TypeScript SDK:Fuel TypeScript SDK предоставляет методы и утилиты на TypeScript для разработки и взаимодействия с сетью Fuel и её экосистемой. Используя SDK, вы можете:Развертывать, взаимодействовать с Fuel и тестировать контракты Sway.Настраивать dApp и локальную среду разработки с помощью CLI.Генерировать и импортировать кошельки из приватных ключей, мнемонических фраз или JSON и безопасно хранить их на клиенте.Создавать пользовательские транзакции, модифицировать их, добавляя ресурсы, политики и подписанты, и отправлять их.Генерировать типы для программ Sway с помощью `typegen` для обеспечения полной типовой безопасности.Подробности на соответствующих страницах раздела. Rust SDK:Fuel Rust SDK можно использовать для различных задач, включая: • Компиляцию, развертывание и тестирование контрактов Sway. • Использование тестовой сети или запуск локального узла Fuel. • Создание и подпись транзакций с помощью кастомных скриптов или вызовов контрактов. • Генерацию безопасных по типам привязок Rust к методам ABI контрактов. Эта книга является обзором различных возможностей, которые можно реализовать с помощью Rust SDK, и инструкцией по их реализации. Имейте в виду, что и SDK, и документация находятся в стадии разработки! Подробности на страницах раздела. Wallet SDK:Это SDK кошелька Fuel, позволяющий взаимодействовать с ним: отправлять транзакции и пр. На странице, скриншот которой показываю, установка. Далее - обзор остального функционала. GraphQL API:API GraphQL от Fuel позволяет запрашивать различные данные блокчейна Fuel. С его помощью можно получать информацию о транзакциях, балансах, блоках и других данных. Также API можно использовать для симуляции и отправки транзакций в сети Fuel. Playground — это интерактивная и графическая среда разработки, которая включает справочник по запросам, мутациям и типам. Она также предоставляет валидацию запросов и контекст для схемы GraphQL. Вы можете протестировать Playground для API GraphQL от Fuel здесь: https://testnet.fuel.network/v1/playground RPC Endpoint: https://testnet.fuel.network/v1/graphql Остальное - на страницах раздела. Forc:Forc расшифровывается как Fuel Orchestrator. Forc предоставляет набор инструментов и команд для разработчиков, работающих с экосистемой Fuel, таких как создание нового проекта, форматирование, выполнение скриптов, развертывание контрактов, тестирование контрактов и многое другое. Если вы знакомы с Rust, forc аналогичен cargo. Если вы новичок в Forc, ознакомьтесь с разделом введения в проект Forc. Для подробного обзора команд CLI Forc, смотрите раздел Команды. В JS, если знакомы с ним, это аналог npm. Подробности использования на соответствующих страницах. Specifications:Fuel: Безопасный децентрализованный обобщённый масштабируемый реестр транзакций Эта книга описывает протокол Fuel, включая Fuel Virtual Machine (FuelVM) — чрезвычайно быструю проверяемую виртуальную машину блокчейна. ПротоколФормат транзакцииИдентификаторы вычислений — Вычисление уникальных идентификаторов для транзакций, контрактов и UTXO.Правила действительности транзакций — Определение правил действительности транзакций.Криптографические примитивы — Криптографические примитивы, используемые в Fuel.Интерфейс бинарного приложения (ABI) — Низкоуровневые детали взаимодействия с байт-кодом Fuel.Инициализация слотов хранения — Формат JSON для инициализации слотов хранения контракта.Формат заголовка блока — Формат заголовка блока Fuel.Релеер/Мост — Протокол релеера/моста Fuel.FuelVMОбзор — Описание FuelVM на высоком уровне, от архитектуры до процесса инициализации.Набор инструкций — Определение набора инструкций FuelVM.Специфичные для сетиProof of Authority (PoA) — Сеть Fuel на основе Proof of Authority.ТестированиеРазреженное дерево Меркла — Набор тестов для проверки правильности выводов разреженного дерева Меркла.Подробности на страницах. Contributing:Описаны способа внесения вклада в Fuel.Внешние ссылкиSway Std Lib:Отдельная документация для библиотеки. Sway Core:Тоже. Example Applications:Репозиторий с примерами приложений. Sway playground:Здесь можно работать с Sway кодом, компилировать его и пр... Sway By Example:Различные примеры кода на Sway. Faucet:Здесь можно ввести Fuel адрес, и получить тестнет токены.Итог по документацииОценка 4 из 5: всё подробно, но я бы считал скорее отдельным блокчейном, никак не связанным с Ethereum роллапами, потому что связь эта не показана в документации...ПрактикаКошелёкПодключаясь в основном приложении, выбираем Fuel wallet, либо переходим по этой ссылке расширения:"Установить" и ставим. Открывается кошелёк:"Create new wallet":Принимаем условия, отметив галочку, и жмём "Next: Seed Phrase":Копируем и сохраняем надёжно, отмечаем "Confirm Saved" и кликаем по "Next: Confirm phrase":Вставляем все слова и переходим по "Next: Your password":Вводим пароль, "Next: Finish set-up":Готово. Перехожу в кошелёк:"Menu":"Networks Management":Добавлять нам не нужно - идём дальше. "Account Management":Стандартное место управления аккаунтами. "Settings":В меню настроек нет ничего интересного и нужного. Под кнопкой меню найдём аккаунт 1 с адресом - копируем. У меня это 0xf18c347ca42dec41a94d237557a7f52b1666923b86da5718275a3f0a214806e1. И отправляем на него средства. "Receive" открывает QR-код:Кнопка "Faucet" переводит на страницу https://faucet-testnet.fuel.network/?address=0xf18c347ca42dec41a94d237557a7f52b1666923b86da5718275a3f0a214806e1 Т. е. с адресом (у вас будет свой url):Отмечаем галочки, в т. ч. капчу и "Give me Test Ether":Успешно. Идём в кошелёк, и видим:Теперь можем отправить, нажав "Send Button":Форма стандартная. В "Transaction History" можем посмотреть транзакции:Основное приложение - https://app.fuel.network/:По ссылке "Community" попадёте на форум:На главной же или по ссылке Explorer можете смотреть транзакции. Например, нажму по первой:Bridge"Connect Ethereum Wallet":Выбрали, авторизовались:"Connect Fuel Wallet":Почему-то не добавили поддержку EVM, что странно, т. к. заявляли об этом, и в некоторых приложениях поддержка реализована, но что есть то есть... Выбираю Fuel wallet:"Next":"Connect" и указываю сумму на странице:"Deposit" и подтверждаем в кошельке. Ждём:Статус пишет на экране. Придётся подождать долго, т. к. мост работает медленно... В "Transaction history" можем посмотреть историю транзакций:Нажимаем по транзакции:И видим по шагам, что всё завершено. Проверяем в кошельке - есть:Можем вывести, перейдя к "Withdraw Tab":Заполняете сумму, "Withdraw" и подтверждаете в кошельке Fuel. Всё - ждём:Видим, что через 7 дней вывод продолжится:ЭкосистемаМожно отфильтровать по категориям, например, выберу DeFi:Пример 1: Sway farm"Connect": "Fuel Wallet" и подключаем:"Make A New Player":Страница:Пример 2: Fuel name service:"Connect":Только один кошелёк: Fuelet Wallet. Ставлю его. Вот так он выглядит:В плане создания единственное отличие в том, что для разблокировки не пароль, а код из 6 чисел. Итак, выбираем кошелёк в подключении к Fuel name service:"Connect" - подключились. Вводим домен. Принимаем условия, нажав по соответствующей кнопке, а затем вводим желаемое, кликаем по "Search":Если свободен, будет кнопка регистрации (я увеличил до трёх лет, поэтому "Register for 3 years"). Отмечаем капчу Recaptcha и жмём по кнопке:В кошельке "Approve":"Manage":Можно изменить адрес владельца и сделать основным ("Use as a primary name"), а также посмотреть, когда истекает срок действия.Получаем поинты за депозитПереходим по ссылке https://app.fuel.network/earn-points/deposit/"Connect Wallet":Выбираем EVM кошелёк, подключаем... Список токенов с возможностью депозита:Видим балансы с кнопками "Deposit". Согласно списку токенов с наибольшими поинтами с 19 июля по 2 августа выбираю pzETH (покупаю его):"Deposit":Отмечаем галочки и жмём "Next: Deposit":Заполняем сумму, "Approve pzETH" и утверждаем в кошельке. После:Нажимаю "Deposit pzETH" и подтверждаю в кошельке. Всё:Появилась кнопка вывода, а пополнение стало называться "Deposit More". Покажу форму вывода:Сначала предупреждают, что поинты будут потеряны.Вводите сумму и нажимаете "Withdraw pzETH" (вместо pzETH ваш токен). Также на странице потом увидете поинты, а уже сейчас - TVL. Перейдя в Leaderboard, можем посмотреть рейтинг:Обновления раз в 24 часа. В FAQ - ответы на вопросы по points program, но это просто переход к разделу на странице:Итог по практикеОценка 4 из 5: функционал хороший, экосистема есть, но некоторые проекты не работают или в разработке…Общий итог25 из 30 или 4 из 5:Команда: в списке участников команды LinkedIn мало профилей со ссылками, но благодаря Cryptorank смогли получить представление о профессионализме команды; В Discord и Telegram чате активность есть, и на вопросы отвечают.Концепт: кажется излишним создание своей виртуальной машины со своим языком программирования. Достаточно сделать максимально настраиваемую систему для построения роллапов, а уже за счёт них реализуется масштабирование: делать собственный язык и VM для этого нет смысла...Коин: токеномики нет, но в остальном всё нормКод: репозиториев много, открытого кода тоже много, разработка периодически ведётся (многое обновлялось недавно).Документация: всё подробно, но я бы считал скорее отдельным блокчейном, никак не связанным с Ethereum роллапами, потому что связь эта не показана в документации...Практика: функционал хороший, экосистема есть, но некоторые проекты не работают или в разработке...ВсёБлагодарю за внимание. С вами был незрячий программист, автор https://t.me/blind_dev - подписывайтесь, чтоб получать новые обзоры, дайджесты из web3 сферы и новости по моим разработкам. Распространяйте обзор - это для меня важно, т. к. способствует увеличению числа подписчиков. ## Publication Information - [Denis Skripnik](https://paragraph.com/@denis_skripnik/): Publication homepage - [All Posts](https://paragraph.com/@denis_skripnik/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@denis_skripnik): Subscribe to updates ## Optional - [Collect as NFT](https://paragraph.com/@denis_skripnik/fuel): Support the author by collecting this post - [View Collectors](https://paragraph.com/@denis_skripnik/fuel/collectors): See who has collected this post