GitHunt
AL

alebeta06/chainlink-bootcampES-2024

Chainlink Bootcamp 2024 en Español.

solidity
ethereum
openzeppelin
Chainlink

Se utilizo el entorno de desarrollo de Remix IDE

  • Entender cómo construir contratos inteligentes es una de las habilidades que está teniendo un incremento debido al creciente interes en el mundo de Web3.
  • Aprender desde principios básicos de blockchain hasta cómo crear contratos inteligentes en Ethereum.
  • Conocerás la plataforma de Chainlink y todos sus servicios.

Link a las sesiones:

Día 1 ​Blockchain concepts and Wallets

  • Creación de billeteras en MetaMask, Cuenta1 y Cuenta2
  • Obtenga Sepolia ETH del faucet para la Cuenta 1
  • Transferencia de Cuenta1 a Cuenta2 0.1 Sepolia ETH

​Día 2 ​Solidity Fundamentals

Creación del contrato inteligente Register.sol

Este contrato es muy básico que permite obtener y establecer una única cadena de información.

Creando el contrato inteligente RegisterAccess.sol

Este contrato es un sistema de control de acceso simple que permite al propietario administrar una lista de información, controlar el acceso a ciertas funciones y monitorear cambios a través de eventos.

​Día 3 ​ ​ERC20 Tokens and Chainlink Data Feeds

Creación del contrato inteligente Token.sol

Este contrato crea el token. Amplía los contratos OpenZeppelin ERC20 y AccessControl.

Este contrato de token introduce un mecanismo de control de acceso basado en roles, que permite que ciertas direcciones con MINTER_ROLE creen (acuñan) nuevos tokens.

El suministro total, los saldos y las transferencias de tokens siguen el comportamiento estándar ERC-20 heredado del contrato OpenZeppelin ERC20.

Creación del contrato inteligente TokenShop.sol

De aquí proviene el token creado: es una dApp (aplicación descentralizada) simple que actúa como un almacén de tokens, lo que permite a los usuarios comprar tokens enviando ETH al contrato.

Este contrato se basa en un oráculo Chainlink externo para obtener el precio ETH/USD.

​Día 4 ​Cross Chain Tokens using Chainlink CCIP

CCIP de enlace de cadena

Creación del contrato inteligente CCIPTokenSenderFujiSepolia.sol

Aquí utilizamos el protocolo de interoperabilidad entre cadenas para transferir mensajes Chainlink CCIP desde la red de prueba AVAX Fuji a la red de prueba Sepolia Ethereum.

Implica crear y enviar un mensaje CCIP, administrar las tarifas de los tokens LINK y permitir que el propietario del contrato retire los tokens restantes.

El selector de cadena de destino (destinationChainSelector) está configurado en la red de prueba de Sepolia.

CCIP de enlace de cadena

Testnet AVAX Fuji

Redes compatibles con CCIP

​Día 5 ​Mentoring session with the Chainlink community

  • Mentoria con algunos miembros de la comunidad en español de Chainlink.

​Día 6 ​NFTs and Chainlink Automation

NFTs (Non-Fungible Token)

Images in NFTs

IPFS: Piñata, Infura, Quicknode NFT.storage, Web3.storage, Thirdweb storage

Metadata - Json

{
    "name": "NFT item name",
    "description": "NFT item description",
    "image": "https://...",
    "attributes": [...]
}

Creating a NTF collection with OpenZeppelin wizard
https://wizard.openzeppelin.com/#erc721

Listing in OpenSea marketplace
https://testnets.opensea.io/

Creating Dynamic NFT

Metadata - On-chain upgrade
- Metadata URL
- URL image
- Json

  • Los contratos inteligentes NO son autoejecutables
  • No pueden por sí solos iniciar un proceso o llamar a sus funciones de vez en cuando o bajo ciertas condiciones.
  • Los cambios en el estado de un contrato inteligente solo ocurren cuando otra cuenta inicia una transacción
  • Ejemplos: un usuario, oráculo u otro contrato inteligente

Actualización de NTF con Blockchain Oracles

Chainlink Automation: automatización descentralizada de contratos inteligentes

Red descentralizada de nodos. Los cuales son recompensados por ejecutar procesos registrados (trabajos), llamados Mantenimientos.

Se pueden utilizar para verificar condiciones y enviar transacciones a contratos inteligentes según reglas preestablecidas. Es el agente activo el que interactuará con un contrato inteligente.

Chainlink Automation

Docs Chainlink Automation

Register new Upkeep

​Día 7 ​Chainlink CCIP in cross-chain dApps

Cross-chain NFTs

Arbitrary Messaging

Programmable Token Transfers

Chainlink CCIP

Price Feed Contract Addresses

​Día 8 ​Random Numbers using Chainlink VRF

Chainlink VRF (función aleatoria verificable) es un generador de números aleatorios (RNG) demostrablemente justo y verificable que permite que los contratos inteligentes accedan a valores aleatorios sin comprometer la seguridad o la usabilidad.

Crea un juego Runners usando Chainlink VRF.

Recurso VRF

​Día 9 ​Chainlink Functions to access off-chain data

Chainlink Functions permite a cualquiera escribir código sin servidor para recuperar datos de cualquier API y ejecutar cálculos personalizados en la red de Chainlink.
usechainlinkfunctions.com

Docs Chainlink Functions

Run-functions

NPM package @chainlink/functions-toolkit

Ways To Use Chainlink Functions in Your Decentralized Applications

​Día 10 ​Connecting the world using the Chainlink platform

  • Obtenga datos en sus contratos inteligentes de fuentes externas
  • Cualquier activo dentro de la cadena respaldado por reservas fuera de la cadena o entre cadenas.
  • Proporciona contratos inteligentes con los datos necesarios para calcular la verdadera colateralización.
  • Operado por una red descentralizada de oráculos
  • Reducir los riesgos de insolvencia con auditorías automatizadas y basadas en la verdad.
  • Mejorar la transparencia para los usuarios.
  • Prevenir fallas sistémicas en DeFi

Para: activos digitalizados, frenos de circuito, tokenización entre cadenas, nuevos productos financieros, activos entre cadenas, activos envueltos, monedas estables respaldadas por Fiat, prueba de reserva para Bitcoin
Chainlink Proof-of-Reserve

Docs: Chainlink Market and Data Feeds

Article: What Are Proof of Reserves?

Article: Verify Stablecoin Collateral With Chainlink Proof of Reserve

Data Streams

Con Data Streams, las dApps tienen acceso bajo demanda a datos de mercado de alta frecuencia respaldados por una infraestructura descentralizada y transparente.
Docs: Data Streams