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 Stellar. Te ayuda a pasar de la idea a una dApp de pila completa funcionando más rápido — proporcionando herramientas CLI, plantillas de contratos reutilizables, un registro de contratos inteligentes y un frontend moderno.

Requisitos previos

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 del frontendDescargar 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 nuevo proyecto

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

Tendrás varias plantillas de contratos ya en el proyecto, o puedes empezar desde el OpenZeppelin Wizard para personalizar tu contrato y desde ahí iniciar un proyecto 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

¡Tendrás 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 nuevos proyectos de contratos inteligentes Stellar
    • stellar scaffold upgrade: Transformar espacios de trabajo de contratos Stellar existentes en proyectos Scaffold
    • stellar scaffold build: Desarrolla contratos y genera clientes TypeScript
    • stellar scaffold watch: Modo de desarrollo con recarga en caliente
    • stellar registry: Publicar, desplegar y administrar contratos inteligentes
  • Gestión del entorno

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

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

Más recursos

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