Configurar
Los contratos inteligentes Stellar son pequeños programas escritos en el lenguaje de programación Rust.
Para crear y desarrollar contratos, solo necesitas un par de requisitos previos:
- Una cadena de herramientas de Rust
- Un editor que admita Rust
- Stellar CLI
Instalar Rust
- macOS/Linux
- Windows
- Other
Si usa macOS, Linux u otro sistema operativo tipo Unix, el método más simple para instalar una toolchain de Rust es instalar rustup
. Instala rustup
con el siguiente comando.
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
En Windows, descarga y ejecuta rustup-init.exe. Puedes continuar con la configuración predeterminada presionando Enter.
El Stellar CLI usa emojis en su salida. Para renderizarlos correctamente en Windows, se recomienda usar el Windows Terminal. Consulta cómo instalar Windows Terminal en Microsoft Learn. Si se usa la CLI en la ventana de comandos de Windows o en PowerShell, funcionará como se espera, pero los emojis aparecerán como signos de interrogación.
Si ya estás usando WSL, también puedes seguir las instrucciones para Linux.
Para otros métodos de instalación de Rust, consulta: https://www.rust-lang.org/tools/install
Instalar el objetivo
Instala el objetivo wasm32-unknown-unknown
.
rustup target add wasm32-unknown-unknown
Configurar un editor
Muchos editores tienen soporte para Rust. Visita el siguiente enlace para descubrir cómo configurar tu editor: https://www.rust-lang.org/tools
Un editor popular es Visual Studio Code:
- Editor de Visual Studio Code.
- Rust Analyzer para soporte del lenguaje Rust.
- CodeLLDB para depuración paso a paso.
Instalar el Stellar CLI
El Stellar CLI puede ejecutar contratos inteligentes en futurenet, testnet, mainnet, así como en un sandbox local.
La última versión estable es v22.1.0.
Instalar
Hay varias formas de instalar la última versión de Stellar CLI.
- macOS/Linux
- Windows
Instalar con Homebrew (macOS, Linux):
brew install stellar-cli
Instalar con cargo desde la fuente:
cargo install --locked [email protected] --features opt
Usando el instalador:
- Descarga el instalador de la última versión.
- Ve a tu carpeta de Descargas, haz doble clic en el instalador y sigue las instrucciones del asistente.
- Reinicia tu terminal para usar el comando
stellar
.
Usando winget:
winget install --id Stellar.StellarCLI --version 22.1.0
Instalar con cargo desde la fuente:
cargo install --locked [email protected] --features opt
Informa incidencias y comparte comentarios sobre el Stellar CLI aquí.
Documentación
La documentación de referencia integral generada automáticamente está disponible aquí.
Autocompletado
Puedes usar stellar completion
para generar autocompletado de shell para diferentes shells. Deberías probarlo. ¡Te sentirás como si tuvieras un superpoder!
- Bash
- ZSH
- fish
- PowerShell
- Elvish
Para habilitar el autocompletado en la sesión de shell actual:
source <(stellar completion --shell bash)
Para habilitar el autocompletado de manera permanente, ejecuta el siguiente comando y luego reinicia tu terminal:
echo "source <(stellar completion --shell bash)" >> ~/.bashrc
Para habilitar el autocompletado en la sesión de shell actual:
source <(stellar completion --shell zsh)
Para habilitar el autocompletado de manera permanente, ejecuta los siguientes comandos y luego reinicia tu terminal:
echo "source <(stellar completion --shell zsh)" >> ~/.zshrc
Para habilitar el autocompletado en la sesión de shell actual:
stellar completion --shell fish | source
Para habilitar el autocompletado de manera permanente, ejecuta el siguiente comando y luego reinicia tu terminal:
echo "stellar completion --shell fish | source" >> ~/.config/fish/config.fish
Para habilitar el autocompletado en la sesión de shell actual:
stellar completion --shell powershell | Out-String | Invoke-Expression
Para habilitar el autocompletado de manera permanente, ejecuta los siguientes comandos y luego reinicia tu terminal:
New-Item -ItemType Directory -Path $(Split-Path $PROFILE) -Force
if (-Not (Test-Path $PROFILE)) { New-Item -ItemType File -Path $PROFILE | Out-Null }
Add-Content $PROFILE 'Set-PSReadlineKeyHandler -Key Tab -Function MenuComplete'
Add-Content $PROFILE 'stellar completion --shell powershell | Out-String | Invoke-Expression'
Si recibes un error como no se puede cargar porque los scripts están deshabilitados en este sistema
, es posible que debas cambiar tu Política de Ejecución con Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope CurrentUser
. Antes de ejecutar este comando, asegúrate de entender las implicaciones de hacerlo.
Para habilitar el autocompletado en la sesión de shell actual:
source (stellar completion --shell elvish)
Para habilitar el autocompletado de manera permanente, ejecuta los siguientes comandos y luego reinicia tu terminal:
echo "source (stellar completion --shell elvish)" >> ~/.elvish/rc.elv
Configurando el CLI para Testnet
Configurar una identidad
Cuando implementas un contrato inteligente en una red, necesitas especificar una identidad que se utilizará para firmar las transacciones.
Configuremos una identidad llamada alice
. Puedes usar cualquier nombre que desees, pero sería bueno tener algunas identidades nombradas que puedas usar para probar, como alice
, bob
y carol
. Ten en cuenta que la cuenta será financiada utilizando Friendbot.
stellar keys generate --global alice --network testnet --fund
Puedes ver la clave pública de alice
con:
stellar keys address alice
Al igual que la configuración de la red, el --global
significa que la identidad se almacena en ~/.config/stellar/identity/alice.toml
. Puedes omitir la opción --global
para almacenar la identidad en la carpeta .stellar/identity
de tu proyecto en su lugar.
Anteriormente usamos ~/.config/soroban
(global) y .soroban
(local) como los directorios de configuración. Estos directorios todavía son admitidos, pero el nombre preferido ahora es ~/.config/stellar
y .stellar
en adelante.