Máte zájem zapojit se do vývoje projektů Web3? Tento přehled vám představí nejpopulárnější vrstvy a vývojová prostředí.
Není tajemstvím, že téma Web3 aktuálně vzbuzuje značný rozruch. Mnoho profesionálů opouští pozice ve společnostech FAANG i v renomovaných startupech, aby se pustili do nových aktivit v metaversu Web3.
Pokud cítíte podobné nutkání, možná se ptáte: kde začít? Tento článek je určený právě těm, kteří chtějí se ihned vrhnout na vývoj v oblasti Web3. Probereme různé kategorie a ke každé z nich přidáme užitečné zdroje, které vám usnadní start.
Pro lepší přehlednost rozdělíme dostupné zdroje do následujících sekcí:
- Vrstvy: Nejvyužívanější blockchainy ve vývoji.
- Vývojová prostředí: Nástroje, které vám pomohou s nasazením do těchto vrstev.
- Identita: Jak vytvářet peněženkovou identitu a využívat kryptografické přihlašování.
- Úložiště: Vytvoření trvalého úložiště dat pomocí P2P technologie.
- API: Přímý přístup k hlavním sítím pro získávání informací.
- Frontend: Oblíbené frameworky pro tvorbu uživatelského rozhraní.
Termín „zásobník“ definuje specifickou kombinaci technologií používaných k dosažení konkrétního cíle. Ať už jde o full-stack vývoj, nebo v tomto případě Web3 zásobník. Je důležité si uvědomit, že technologie používané při vytváření aplikací a produktů Web3 jsou poměrně „proměnlivé“.
To znamená, že s tím, jak se stále více lidí učí vytvářet software na blockchainu, se mnoho věcí mění. Naším cílem je proto v tomto přehledu uvést zdroje, které již byly použity v reálných projektech.
Pokud vás tento koncept zaujal, pojďme na to.
Vrstvy
Základem každého Web3 projektu je vrstva – konkrétní blockchain síť, na které bude vaše aplikace nebo produkt fungovat.
#1. Ethereum
Ethereum si získalo oblibu díky nativní podpoře chytrých kontraktů.
Vývojáři jej od té doby učinili preferovanou blockchainovou vrstvou pro vytváření aplikací Web3 nové generace. Je také často volenou vrstvou pro mnoho NFT projektů. Takže, pokud máte zájem o práci s aplikacemi spojenými s NFT, Ethereum má již v základu mnoho možností.
#2. Polygon
Polygon je postranní řetězec Etherea, který nabízí robustnější bezpečnostní opatření při zachování nižších transakčních poplatků (gas). Je to populární volba pro projekty s extrémně vysokým objemem transakcí, ale s nízkými cenami za transakci.
Polygon je také často označován jako blockchain vrstvy 2, protože je postranním řetězcem. Rychlý vývoj však dělá z Polygonu oblíbenou volbu nejen pro NFT aplikace, ale i pro dApps a platební systémy.
Další významné Web3 vrstvy:
- Solana – Blockchain vytvořený pro vývoj DeFi aplikací ve velkém měřítku.
- NEAR Protocol – Blockchain pro chytré kontrakty s rozsáhlými vývojářskými zdroji.
- Polkadot – Protokol pro multi-blockchain projekty.
- Tezos – Platforma zaměřená na energetickou efektivitu pro decentralizovaná kreativní prostředí.
- Fantom – Open-source platforma pro chytré kontrakty pro dApps.
Vývojové prostředí
Vývojová prostředí vám ušetří čas, protože nemusíte začínat od nuly. Většina z nich je prozatím založena na Ethereu.
#1. Hardhat
Hardhat je vývojové prostředí pro vývojáře pracující s Ethereum. Usnadňuje automatizaci procesu tvorby a sestavování decentralizovaných aplikací i chytrých kontraktů. Jeho popularita vychází z vestavěné sítě Hardhat, která je kopií Etherea jedna ku jedné a umožňuje lokální testování aplikací.
#2. Truffle
Truffle je JavaScriptový framework pro tvorbu chytrých kontraktů. Předpokládá použití EVM (Ethereum Virtual Machine) a poskytuje nástroje pro urychlení vývojového procesu. Mezi tyto nástroje patří automatické testování, kompilátor kontraktů a nástroje pro přístup ke kontaktům přímo z konzole.
Další pozoruhodná Web3 vývojová prostředí:
- Foundry – Sada nástrojů na bázi Rustu pro tvorbu aplikací na Ethereu.
- Brownie – Pythonový framework pro tvorbu a testování chytrých kontraktů.
- Anchor – Framework pro práci se Solanou, napsaný v Rustu.
- Embark – Komplexní framework pro vývoj na Ethereu.
- Waffle – Speciální framework pro testování chytrých kontraktů.
Identita
Na rozdíl od tradiční autentizace pomocí uživatelského jména a hesla, vývojáři ve Web3 implementují jak používání peněženek, tak i veřejných klíčů.
#1. WalletConnect
WalletConnect je open-source protokol sloužící k propojení s dApps prostřednictvím mobilní peněženky. Uživatelé naskenují QR kód, pomocí kterého ověří svoji identitu a potvrdí nové připojení k aplikaci Web3.
Peněženky jako Pillar nebo MetaMask jsou přímo integrovány s WalletConnect, což znamená, že máte k dispozici mnoho vývojářských zdrojů. Protokol navíc funguje se všemi hlavními blockchainy a další řetězce jsou často přidávány.
#2. Spruce
Spruce je startup, který získal podporu Y Combinator. Jeho cílem je přinést koncept decentralizované identity i mimo oblast blockchainu. Sada nástrojů má uživatelům pomoci ověřit jejich digitální identitu v různých médiích: na sociálních sítích, osobních webových stránkách a v blockchainových sítích.
Úložiště
Jak ukládat multimediální soubory (videa, fotografie atd.) v síti Web3? Většinou se to provádí pomocí P2P protokolů pro ukládání souborů.
#1. IPFS
IPFS je přední P2P (peer-to-peer) protokol pro ukládání. Jakmile nahrajete soubor do IPFS, jeho velikost je změněna, soubor je zajištěn vlastním hashem a je mu přidělen otisk prstu jako jedinečný identifikátor.
Poté k souboru mohou přistupovat další uzly (systémy nebo lidé) v síti, soubor ověřit a uložit do mezipaměti. Po uložení do mezipaměti je soubor přístupný komukoli s platnou metodou přístupu.
Cílem IPFS není jen poskytnout decentralizovaný úložný systém, ale také zajistit, aby obsah byl dostupný po mnoho desetiletí, ne jen po několik let. Například webová stránka po čase zmizí a veškerý její obsah včetně médií je ztracen. IPFS nabízí reálné řešení tohoto problému.
#2. Skynet
Skynet nabízí snadné sdílení souborů pomocí (decentralizované) cloudové sítě Sia. Můžete jej vyzkoušet přímo z domovské stránky. Stačí nahrát soubor a získáte odkaz. Odkaz funguje 90 dní, pokud si nezaregistrujete svůj API klíč. V kontextu vývoje vám Skynet umožňuje replikovat stejný případ použití, ale v rámci vaší decentralizované aplikace.
#3. Filebase
Filebase je SaaS startup, který poskytuje přímé propojení s API Amazon S3. Toto API můžete využít k načítání dat z vašich S3 bucketů a následně je přerozdělovat do různých decentralizovaných úložišť.
Filebase aktuálně podporuje Web3 úložiště jako Skynet, IPFS, Sia a Storj. To znamená, že jako vývojář můžete zjednodušit poskytování decentralizovaných služeb ukládání souborů svým klientům.
Jako nový uživatel získáte zdarma 5 GB úložného prostoru. Ceny placených tarifů jsou také rozumné.
Další zajímavá Web3 úložiště:
- Arweave – Protokol, který umožňuje ukládat data trvale a udržitelně za jednorázový poplatek.
- Filecoin – Ukládání různých typů médií v decentralizovaném cloudu.
- Swarm – Samostatný P2P uzel pro ukládání, motivovaný chytrými kontrakty Ethereum.
- Aleph – Tvorba dApps s cloudovým úložištěm spravovaným Aleph.
API
Na rozdíl od tradičního zásobníku založeného na databázích, vývojáři používají API pro interakci s blockchainem, a to jak pro získávání, tak i pro ukládání dat. API jsou někdy označována jako klienti.
#1. The Graph
The Graph je komplexní API řešení pro připojení k různým blockchainům. Cílem tohoto API je pomoci vývojářům získat přístup k datům, pro které by jinak museli vytvářet vlastní algoritmy. Data v blockchainu zahrnují jak jednoduché adresy, tak i složité transakce založené na chytrých kontraktech.
Příkladem je sledování historie NFT.
Zatímco historie jednotlivých nákupů je poměrně snadno dohledatelná, je těžší porozumět vazbám mezi různými nákupy. API The Graph poskytuje předem vytvořené volání a indexové adresáře, které umožňují rychlou vizualizaci konkrétního případu použití.
#2. Web3.js
Web3.js je nejoblíbenější JavaScriptové API pro přímou interakci s Ethereem. Primárně se používá pro vývoj klientských aplikací komunikujících s blockchainem Ethereum. Kolekce pod-knihoven obsažených ve Web3.js poskytuje funkce jako převody, správu chytrých kontraktů a další.
#3. Alchemy
Alchemy se rychle stalo jednou z nejrespektovanějších Web3 platforem. Jejich přístup spočívá ve vzdělávání vývojářů a podpoře tvorby a škálování Web3 aplikací. Toho dosahují poskytováním sofistikovaného Blockchain API a sady nástrojů pro vývojáře.
#4. useDApp
useDApp je framework založený na Reactu pro interakci s blockchainem Ethereum. Skládá se z React.js, knihovny Ethers.js, Waffle a komponent Web3 React. Obvykle se používá k vytváření snadno dostupných webových rozhraní, která mohou zobrazovat různá data na základě požadavků vašeho projektu.
Frontend
Jaké frameworky používají vývojáři pro tvorbu frontendu projektů Web3?
#1. React
Popularita Reactu je bezkonkurenční. Není proto překvapením, že je to také nejoblíbenější frontendová knihovna pro weby Web3. Architektura řízená komponentami umožňuje vývojářům pracovat na různých částech frontendu, aniž by zasahovali do jádra projektu.
Jako dobrý výchozí bod doporučujeme knihovnu Web3-React na GitHubu.
#2. Next.js
Next.js je jakýsi nástupce Reactu, i když ani jeden z projektů není přímo přidružený k tomu druhému. Rozsáhlé projekty Web3 vyžadují efektivní správu zdrojů a Next.js je dodáván s nativními nástroji pro statické i dynamické projekty. Používají ho společnosti jako Binance, Bitscreener, Hashnode a další.
Pro rychlý start je ideální Next Web3 Boilerplate.
Začínáme s vývojem Web3
Je toho dost, zvláště pokud teprve začínáte. Faktem je, že v této oblasti se věci mění poměrně rychle. I když se všechny počáteční projekty týkaly NFT, v dnešní době se větší důraz klade na decentralizované sítě a individuální blockchainové platformy.
Tento přehled by vám měl bohatě stačit pro start s projektem Web3. Doporučujeme také sledovat novinky na Twitteru a Discordu, protože jsou to dvě nejaktivnější komunity, které drží krok s nejnovějšími trendy ve Web3.