Saltar al contenido principal

Scaffold Stellar

Scaffold Stellar es un kit de herramientas para desarrolladores para crear aplicaciones descentralizadas (dApps) y contratos inteligentes en la blockchain de Stellar. Te ayuda a pasar de la idea a una dApp full-stack funcional más rápido — proporcionando herramientas CLI, plantillas de contratos reutilizables, un registro de contratos inteligentes y un frontend moderno.

Prerequisitos

Antes de comenzar, asegúrate de tener instalado lo siguiente:

HerramientaDescripciónEnlace de instalación
Rust & CargoPara escribir y compilar contratos inteligentescurl https://sh.rustup.rs -sSf | sh
Node.js & npmPara el desarrollo frontendDescarga desde el sitio oficial
Stellar CLIPara construir, desplegar e interactuar con contratos inteligentesLink for the repo

Comenzar

Instalación

Instala las herramientas CLI requeridas:

# Install stellar-scaffold CLI
cargo install stellar-scaffold-cli

# Install registry CLI (to easily deploy your contract to the registry)
cargo install stellar-registry-cli

Crear un proyecto nuevo

  1. Inicializa un proyecto nuevo:
stellar scaffold init my-project
cd my-project

Tendrás varios contratos de ejemplo ya incluidos en el proyecto, o puedes comenzar desde el OpenZeppelin Wizard para personalizar tu contrato y a partir de ahí iniciar un proyecto con Scaffold Stellar.

  1. Configura tu entorno de desarrollo:
# Copy and configure environment variables
cp .env.example .env

# Install frontend dependencies
npm install
  1. Inicia el entorno de desarrollo:
npm run dev

¡Contarás con una dApp en funcionamiento, con un par de contratos para empezar, lista para que comiences a construir!

Explora el archivo environments.toml para personalizar tu(s) entorno(s) de desarrollo.

Estructura del proyecto

Cuando ejecutas stellar scaffold init, crea una estructura de proyecto full-stack con contratos de ejemplo y un frontend moderno:

my-project/
├── contracts/ # Rust smart contracts (compiled to WASM)
├── packages/ # Auto-generated TypeScript contract clients
├── src/ # React frontend code
│ ├── components/ # Reusable UI components
│ ├── contracts/ # Contract interaction logic
│ ├── App.tsx # Main app component
│ └── main.tsx # Entry point
├── environments.toml # Configuration per environment (dev/test/prod)
├── .env # Local environment variables
├── package.json # Frontend packages
└── target/ # Build outputs

Esta plantilla proporciona una aplicación frontend lista para usar con contratos inteligentes de ejemplo y sus clientes TypeScript. El frontend está configurado con Vite, React e incluye componentes básicos para interactuar con los contratos.

Características

  • Plugins CLI para Stellar

    • stellar scaffold init: Inicializar proyectos nuevos de contratos inteligentes Stellar
    • stellar scaffold upgrade: Transformar espacios de trabajo de contratos Stellar existentes en proyectos Scaffold
    • stellar scaffold build: Construir contratos y generar clientes TypeScript
    • stellar scaffold watch: Modo desarrollo con recarga en caliente
    • stellar registry: Publicar, desplegar y gestionar contratos inteligentes
  • Gestión de entornos

    • Compilaciones específicas para cada entorno (desarrollo, pruebas, staging, producción)
    • Integración fluida con contratos locales y desplegados
    • Configuración de red mediante environments.toml
    • Admite múltiples entornos de despliegue
  • Registro de contratos inteligentes

    • Plataforma de publicación on-chain de binarios Wasm
    • Gestión de versiones y nombrado de contratos
    • Verificación de contratos y gestión de dependencias
    • Flujo de despliegue seguro para testnet y mainnet

Más recursos

Para más información, consulta el proyecto en GitHub!