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:
Herramienta | Descripción | Enlace de instalación |
---|---|---|
Rust & Cargo | Para escribir y compilar contratos inteligentes | curl https://sh.rustup.rs -sSf | sh |
Node.js & npm | Para el desarrollo del frontend | Descargar desde el sitio oficial |
Stellar CLI | Para construir, desplegar e interactuar con contratos inteligentes | Link 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
- 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.
- Configura tu entorno de desarrollo:
# Copy and configure environment variables
cp .env.example .env
# Install frontend dependencies
npm install
- 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 Stellarstellar scaffold upgrade
: Transformar espacios de trabajo de contratos Stellar existentes en proyectos Scaffoldstellar scaffold build
: Desarrolla contratos y genera clientes TypeScriptstellar scaffold watch
: Modo de desarrollo con recarga en calientestellar 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!