"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Integrar Stellar con JavaScript: crear dApp es fácil (para principiantes absolutos)

Integrar Stellar con JavaScript: crear dApp es fácil (para principiantes absolutos)

Publicado el 2024-08-31
Navegar:215

Integrating Stellar with JavaScript: Building dApp is Easy (for Absolute Beginners)

Stellar es una red blockchain de código abierto para transacciones financieras rápidas y transfronterizas. Si eres un desarrollador de JavaScript y quieres crear una dApp en una red estelar, esto es para ti. En este tutorial, aprenderemos cómo integrar Stellar con JavaScript, desde configurar el entorno hasta realizar su primera transacción.

Entonces, comencemos.

Oh, antes de comenzar, necesitamos conocimientos básicos de JavaScript y tener npm y Node.js instalados en su máquina.

1. Mejorar el medio ambiente

Primero, abre tu terminal o símbolo del sistema y crea un nuevo directorio para el proyecto:

mkdir stellar-js
cd stellar-js
npm init -y

Este comando inicializará un nuevo proyecto de Node.js.

Ahora, instale Stellar SDK para JavaScript.

npm install stellar-sdk

Pero espera ¿Qué es Stellar-SDK?

Stellar SDK es una poderosa biblioteca para interactuar con la red Stellar usando JavaScript.

2. Conexión a la red Stellar

Ahora que el entorno está configurado, nos conectaremos con la red Stellar. Requerimos Stellar SDK y conectarnos a la red de prueba.

¿Qué es Testnet?

Testnet es una red de uso gratuito para que un desarrollador pruebe su aplicación sin conectarse a dinero real. Donde hay una red principal que se conecta a dinero real y requiere XLM para cubrir las tarifas de transacción, etc. La red de prueba es similar a la red principal, tiene lúmenes de prueba gratuitos (XLM) llamados Friendbot.

const StellarSdk = require("stellar-sdk");
const server = new StellarSdk.Server("https://horizon-testnet.stellar.org");

Esto inicializará el SDK y configurará el servidor para que se conecte a la red de prueba.

3. Crear una nueva cuenta

Para interactuar con la red Stellar, es necesario tener una cuenta Stellar. Puede crear fácilmente una nueva cuenta utilizando el SDK generando un par clave-valor. El par de valores consta de una clave pública y una privada.

const pair = StellarSdk.Keypair.random();

console.log('Public Key:', pair.publicKey());
console.log('Secret Key:', pair.secret());

La clave pública() es el identificador de su cuenta, mientras que la clave secreta() es su clave privada, que debe mantenerse segura.

4. Financiar la cuenta

En la testnet, puedes depositar fondos en tu cuenta utilizando el servicio Friendbot de Stellar.

const fetch = require("node-fetch");

const fundAccount = async (publicKey) => {
  try {
    const response = await fetch(
      `https://friendbot.stellar.org?addr=${publicKey}`
    );
    const data = await response.json();
    console.log("Account funded:", data);
  } catch (error) {
    console.error("Error funding account:", error);
  }
};

fundAccount(pair.publicKey());

La función fundAccount envía una solicitud a Friendbot para depositar 10.000 lúmenes de prueba en su cuenta. De acuerdo con el estado de la transacción, registrará el mensaje.

5. Realizar una transacción

Ahora que tu cuenta está fundada, puedes realizar tu primera transacción en la red estelar. Construiremos, firmaremos y enviaremos la transacción a la red estelar. Enviaremos 10 XLM desde nuestra cuenta a otra cuenta.

const sendPayment = async (publicKey) => {
  try {
    const account = await server.loadAccount(pair.publicKey());

    const transaction = new StellarSdk.TransactionBuilder(account, {
      fee: StellarSdk.BASE_FEE,
      networkPassphrase: StellarSdk.Networks.TESTNET,
    })
      .addOperation(
        StellarSdk.Operation.payment({
          destination: publicKey,
          asset: StellarSdk.Asset.native(),
          amount: "10",
        })
      )
      .setTimeout(30)
      .build();

    transaction.sign(pair);

    const result = await server.submitTransaction(transaction);
    console.log("Transaction successful:", result);
  } catch (error) {
    console.error("Error sending payment:", error);
  }
};

sendPayment("Another_Account's_Public_Key");

6. Manejo de errores y depuración

Incluso una sola coma ( , ) puede arruinar tu código. Manejar los errores es muy importante para mantener el código en el camino esperado.

try {
  const result = await server.submitTransaction(transaction);
  console.log("Success:", result);
} catch (error) {
  console.error("Error:", error.response.data.extras.result_codes);
}

Esto detecta cualquier error durante la transacción y registra el error específico que ayuda a depurar el código.

Conclusión

Acabamos de integrar Stellar con JavaScript y realizamos nuestra primera transacción en la red de prueba de Stellar. Dado que JavaScript es ampliamente adoptado entre los desarrolladores, la transición a blockchain con Stellar es más conveniente.

La mejor manera de aprender cualquier habilidad nueva es practicar más proyectos. Crea pequeños proyectos y experimenta con los conceptos.

Si encuentras útil esta publicación, no olvides seguir mostrándome amor. Hasta la próxima, dale me gusta, comparte y aprende.

También puedes mantenerte conectado conmigo siguiéndome aquí y en X, GitHub y LinkedIn.

Declaración de liberación Este artículo se reproduce en: https://dev.to/jitendrachoudhary/integrating-stellar-with-javascript-building-dapp-is-easy-for-absolute-beginners-4n66?1 Si hay alguna infracción, comuníquese con Study_golang @163.com eliminar
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3