DEV Community

Cover image for OP Stack - Lanza tu propio L2
Ahmed Castro
Ahmed Castro

Posted on

OP Stack - Lanza tu propio L2

El OP Stack es hoy uno de mis proyectos favoritos. Me agrada mucho la idea detrás de la Superchain reflejada en Bedrock que es hoy la implementación en producción de L2 más accesible a todos. Me alegra mucho ver a proyectos como Base, Mantle y Celo uniendo esfuerzos y embarcarse en esta propuesta de Optimism. A pesar que los Optimistic Rollups están quedando desfasados por los ZK rollups a nivel técnico, pienso que estamos llegando a un punto en el que los aspectos culturales son más importantes que los técnicos. Hago este video con ánimos de explorar de primera mano la propuesta del OP Stack y ver su estado actual. Espero que lo encuentren de su agrado.

Antes de comenzar

Para este tutorial ocuparás Metamask u otra wallet compatible con fondos en Sepolia que puedes obtener desde un faucet. En este caso ocuparás alrededor de 2 Sepolia ETH. También necesitarás una computadora con 8GB de RAM, en mi caso estaré usando un servidor en Digital Ocean con las siguientes características:

  • Ubuntu 20.04 LTS
  • 8GB RAM
  • 4 CPUs
  • 160GB SSD

El Getting Started del OP Stack

En este video usaremos esta guía. Que está basada en la documentación oficial. Toma en cuenta que, a diferencia de la documentación oficial, usaremos Sepolia para reducir los costos de gas. Además, una vez que tengamos el nodo preparado, haremos uso de Remix en lugar de la terminal para lanzar un contrato de ejemplo.

Usemos Sepolia para ahorrar gas

La guía oficial está pensada para Goerli, pero nosotros usaremos Sepolia para ahorrar gas pues últimamente Goerli está muy saturado. A continuación los cambios que debes tomar en cuenta.

Cambio #1: Requerimientos de gas

La documentación oficial recomienda las siguientes cantidades de gas para Goerli:

Admin — 2 ETH
Proposer — 5 ETH
Batcher — 10 ETH
Enter fullscreen mode Exit fullscreen mode

Nosotros podemos cortarlas a una décima parte y distribuirlas de la siguiente manera en Sepolia:

Admin — 0.2 ETH
Proposer — 0.5 ETH
Batcher — 1 ETH
Enter fullscreen mode Exit fullscreen mode

Cambio #2: Conecta tu rollup.json a Sepolia

La configuración de ejemplo está diseñada para conectarse con Goerli por defecto. Así que cuando te encuentres editando deploy-config/getting-started.json, asegurate de cambiar el valor de l1ChainID de 5 (que representa a Goerli) a 11155111 para conectarte a Sepolia.

Conéctate a Metamask y lanza desde Remix

Si deseas usar Remix para lanzar un contrato primero debes conectar tu metamask a tu nuevo L2. Puedes llenar el formulario de conexión a una nueva red de la siguiente manera:

  • Nombre de la red: Mi Layer 2
  • RPC URL: http://IPDETUSERVER:8545
  • Identificador de Red: 42069
  • Símbolo de moneda: ETH
  • Explorador de bloques: Déjalo vacío

Una vez hecho esto puedes lanzar un contrato como de costumbre desde Remix. ¡Inténtalo lanzando este contrato de ERC20 como ejemplo!

// SPDX-License-Identifier: MIT
pragma solidity 0.8.19;

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";

contract SimpleToken is ERC20 {
    constructor(
        string memory name,
        string memory symbol,
        uint256 initialSupply
    ) ERC20(name, symbol) {
        _mint(msg.sender, initialSupply * 1 ether);
    }
}
Enter fullscreen mode Exit fullscreen mode

¡Gracias por ver este tutorial!

Sígueme en dev.to y en Youtube para todo lo relacionado al desarrollo en Blockchain en Español.

Top comments (0)