La pila Web3: referencia para desarrolladores

¿Quieres involucrarte en la construcción de proyectos Web3? Esta referencia describirá las capas y los entornos de desarrollo más populares.

No es ningún secreto que hay mucho revuelo en torno a este tema, Web3, en este momento. Numerosas personas han dejado atrás sus trabajos en FAANG y nuevas empresas destacadas para buscar un nuevo comienzo en el metaverso Web3.

Y, asumiendo que sientes una picazón similar, ¿por dónde empiezas? Este artículo está dedicado íntegramente a aquellos que deseen saltar directamente al desarrollo de Web3. Nuestro enfoque estará en una variedad de categorías, cada una de las cuales contiene recursos valiosos para comenzar su viaje.

Para que esta referencia sea accesible, dividiré los recursos en secciones separadas.

Y esas secciones son:

  • Capas. Las cadenas de bloques más populares utilizadas en el desarrollo.
  • Entorno de desarrollo. Herramientas para ayudarlo a implementar en esas capas.
  • Identidad. Cómo crear identidades de billetera y usar el inicio de sesión criptográfico.
  • Almacenamiento. Creación de almacenamiento de datos permanente utilizando tecnología P2P.
  • API. Acceder a las redes principales directamente para extraer información.
  • Interfaz. Marcos populares para cosas de front-end.

Una pila es un término utilizado para definir una combinación particular de tecnologías utilizadas para lograr un objetivo específico. Ya sea un desarrollo de pila completa o, en este caso, la pila Web3. Vale la pena señalar que la tecnología involucrada en la creación de aplicaciones y productos Web3 es bastante «volátil».

En cierto sentido, muchas cosas están cambiando a medida que más personas se sienten cómodas con la creación de software en la cadena de bloques. Por lo tanto, nuestro objetivo para esta referencia es mencionar los recursos que ya se han utilizado en proyectos del mundo real.

Si todo eso suena bien, podemos empezar.

Capas

La base de cualquier proyecto Web3 comienza con una capa. La red blockchain específica en la que vivirá su aplicación o producto.

#1. Etéreo

Etéreo saltó a la popularidad gracias a su propuesta nativa de contrato inteligente.

Desde entonces, los desarrolladores la han convertido en la capa de cadena de bloques preferida para crear aplicaciones Web3 de próxima generación. También es la capa preferida para muchos proyectos de NFT, por lo que si desea trabajar en aplicaciones relacionadas con NFT, Ethereum tiene mucho que ofrecer de inmediato.

#2. Polígono

los Polígono La capa es una cadena lateral de Ethereum, que ofrece prácticas de seguridad más complejas y mantiene tarifas de transacción (gas) más bajas. Es una opción popular para proyectos donde la cantidad de transacciones es extremadamente alta, pero el precio de las transacciones es bajo.

Dado que Polygon es una cadena lateral, a menudo también se la conoce como Blockchain de capa 2. Sin embargo, el rápido desarrollo de Polygon lo convierte en una opción popular no solo para aplicaciones NFT, sino también para dApps y sistemas de pago.

Otras capas notables de Web3:

  • Solana. Una cadena de bloques construida con el propósito de crear aplicaciones DeFi a escala.
  • Protocolo CERCA. Blockchain de contrato inteligente con inmensos recursos para desarrolladores.
  • Lunares. Protocolo cross-blockchain para la construcción de proyectos de gobernanza.
  • Tezos. Una plataforma centrada en la energía para construir plataformas creativas descentralizadas.
  • fantasma. Plataforma de contrato inteligente de código abierto para crear dApps.

Entorno de desarrollo

Un entorno de desarrollo le permite omitir toda la parte de «comenzar desde cero». Estos están en su mayoría basados ​​​​en Ethereum por el momento.

#1. Casco de seguridad

Casco de seguridad es un entorno de desarrollo para desarrolladores de Ethereum. Funciona ayudando a los desarrolladores a automatizar el proceso de creación y creación de aplicaciones descentralizadas, pero también de contratos inteligentes. Su popularidad se deriva de una red Hardhat integrada, una copia uno por uno de la red Ethereum que puede usar para probar sus aplicaciones localmente.

#2. Trufa

Trufa es un marco basado en JavaScript para construir contratos inteligentes. Se supone que utiliza EVM (Ethereum Virtual Machine), lo que le brinda las herramientas para acelerar el proceso de desarrollo. Algunas de esas herramientas incluyen pruebas automatizadas, un compilador de contratos y herramientas separadas para acceder a sus contactos directamente desde la consola.

Otros entornos de desarrollo notables de Web3:

  • Fundición. Kit de herramientas basado en Rust para crear aplicaciones en Ethereum.
  • Duende. Marco basado en Python para construir y probar contratos inteligentes.
  • Ancla. Un framework para trabajar con Solana, escrito en Rust.
  • Embarcar. Marco todo en uno para construir sobre Ethereum.
  • Gofre. Marco personalizado para probar contratos inteligentes.

Identidad

A diferencia de la autenticación tradicional de nombre de usuario y contraseña, en Web3 los desarrolladores implementan tanto el uso de billeteras como las claves públicas.

#1. WalletConnect

WalletConnect es un protocolo de código abierto que se utiliza para conectarse a dApps a través de una billetera móvil. El concepto principal de usar WalletConnect se resuelve en escanear un código QR, que luego los usuarios pueden usar para verificar su identidad y aprobar una nueva conexión a la aplicación Web3.

Si conoce billeteras como Pillar o MetaMask, todas se integran directamente con WalletConnect. Esto también significa que tiene acceso a muchos recursos para desarrolladores. Por último, pero no menos importante, el protocolo funciona con todas las principales cadenas de bloques, y se agregan más cadenas con frecuencia.

#2. Abeto

El abeto es un Combinador Y respaldado startup que tiene como objetivo llevar el concepto de identidad descentralizada a áreas fuera de la cadena de bloques. Este kit tiene como objetivo ayudar a los usuarios a verificar su identidad digital a través de una variedad de medios: redes sociales, sitios web personales y redes blockchain.

Almacenamiento

¿Cómo almacena medios (videos, fotos, etc.) en Web3? Esto se realiza principalmente mediante protocolos de almacenamiento de archivos P2P.

#1. IPFS

IPFS es el protocolo de almacenamiento P2P (peer-to-peer) líder en el mundo. Una vez que carga un archivo en IPFS, ese archivo se redimensiona, se protege mediante un hash personalizado y se le asigna una huella digital como su identificador único.

Posteriormente, otros nodos (sistemas o personas) que forman parte de esa red pueden acceder al archivo, verificarlo y almacenarlo en su caché. Una vez almacenado en caché, cualquier persona con el método de acceso correcto puede acceder al archivo.

En última instancia, el objetivo de IPFS no es solo proporcionar un sistema de almacenamiento descentralizado. Pero también para garantizar que el contenido tenga una duración de varias décadas en lugar de años. Por ejemplo, un sitio web desaparece después de un tiempo y todo su contenido, incluidos los medios, se pierde. IPFS proporciona una solución real a eso.

#2. skynet

skynet proporciona acceso para compartir archivos utilizando la red en la nube Sia (descentralizada). En realidad, puede usarlo directamente desde la página de inicio. Simplemente cargue un archivo y se le proporcionará un enlace. Tiene una duración de 90 días a menos que se registre para obtener su clave API. Sin embargo, en el contexto del desarrollo, Skynet le facilita replicar el mismo caso de uso pero dentro de su propia aplicación descentralizada.

#2. base de archivos

base de archivos es una startup de SaaS que proporciona un enlace directo con la API de Amazon S3. Puede usar esta API para obtener datos de sus cubos S3 y luego redistribuirlos entre varias opciones de almacenamiento descentralizado.

Actualmente, Filebase admite opciones de almacenamiento basadas en Web3 como Skynet, IPFS, Sia y Storj, entre otras. Como desarrollador, esto significa que puede simplificar el proceso de proporcionar servicios de almacenamiento de archivos descentralizados para sus clientes.

También obtiene 5 GB de almacenamiento gratis como nuevo usuario, aunque el precio es razonable incluso para los planes pagos.

Otras soluciones de almacenamiento notables de Web3:

  • Arweave. Arweave es un protocolo que le permite almacenar datos de forma permanente y sostenible con una tarifa única por adelantado.
  • moneda de archivo. Almacene cualquier tipo de medio en un entorno de nube descentralizado.
  • Enjambre. Un nodo de almacenamiento P2P autosuficiente que está incentivado por los contratos inteligentes de Ethereum.
  • Alef. Cree dApps y deje que Aleph administre el almacenamiento basado en la nube por usted.

API

A diferencia de una pila tradicional basada en una base de datos, los desarrolladores usan una API para interactuar con la cadena de bloques y solicitar o almacenar datos en ella. Las API también se denominan a veces Clientes.

#1. La gráfica

La gráfica es una solución API todo en uno para conectarse a varias cadenas de bloques. El objetivo de esta API es ayudar a los desarrolladores a acceder a datos que, de lo contrario, requerirían la creación de algoritmos individuales. Por ejemplo, los puntos de datos en blockchain se derivan de direcciones simples a transacciones complejas basadas en contratos inteligentes.

Un ejemplo de esto sería rastrear el historial de un NFT.

Si bien es posible rastrear el historial de compras individuales con bastante facilidad, se vuelve cada vez más difícil a medida que intenta comprender las relaciones con las diferentes compras. En tal caso, The Graph API proporciona llamadas prefabricadas y directorios de índice para ayudarlo a visualizar rápidamente un caso de uso particular.

#2. Web3.js

Web3.js es la API de JavaScript más popular para interactuar directamente con Ethereum. Se utiliza principalmente para desarrollar aplicaciones de clientes que interactúan con la cadena Ethereum. La colección de subbibliotecas incluidas en Web3.js proporciona funciones como transferencias, gestión de contratos inteligentes y más.

#3. Alquimia

Alquimia se ha convertido rápidamente en una de las plataformas Web3 más respetadas que existen. Su enfoque consiste en educar a los desarrolladores sobre cómo crear y escalar rápidamente aplicaciones Web3. Y pueden hacerlo al proporcionar una API Blockchain sofisticada y un conjunto de herramientas para desarrolladores.

#4. usarDApp

usarDApp es un marco basado en React para interactuar con la cadena de bloques de Ethereum. Consiste en componentes React.js, la biblioteca Ethers.js, Waffle y Web-3 React. Por lo general, se usa para crear interfaces de sitios web de fácil acceso que pueden mostrar varias consultas de datos según las necesidades de su proyecto.

Interfaz

¿Qué tipo de marcos utilizan los desarrolladores para crear las interfaces de front-end para proyectos Web3?

#1. Reaccionar

La popularidad de Reaccionar es incomparable. Y no sorprende saber que también es la biblioteca front-end más popular para sitios Web3. La arquitectura basada en componentes significa que los desarrolladores pueden trabajar en múltiples partes del front-end sin interferir con el diseño central.

Puedes consultar el Biblioteca Web3-React en GitHub para un punto de partida sólido.

#2. próximo

Siguiente.js es el sucesor de React, aunque ninguno está afiliado directamente. Los proyectos Web3 a gran escala requieren una enorme gestión de recursos, y Next.js viene con herramientas nativas para proyectos estáticos y dinámicos y lo utilizan empresas como Binance, Bitscreener, Hashnode y otras.

Para un comienzo rápido, no busque más que el Siguiente Web3 repetitivo.

Primeros pasos con el desarrollo de Web3

Es mucho para asimilar, especialmente si recién está comenzando. El hecho es que las cosas están cambiando bastante rápido en este campo. Aunque todos los proyectos iniciales estaban relacionados con NFT, en la actualidad hay más énfasis en las redes descentralizadas y las plataformas individuales de blockchain.

En cuanto a comenzar con el proyecto Web3, esta referencia debería ser suficiente. También recomiendo mantenerse informado tanto en Twitter como en Discord, ya que esas son las dos comunidades más activas para mantenerse al día con las últimas tendencias de Web3.