Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚗 Contrato de Transporte - Soroban (Stellar)

📋 Descripción del Proyecto

Este es un sistema completo de transporte inteligente que incluye:

  • Contrato inteligente desplegado en la red de Stellar (Soroban)
  • Frontend web moderno con React y diseño profesional
  • Sistema de pagos NFC integrado
  • Gestión de choferes y pasajeros con blockchain
  • Sistema de recompensas NFT basado en viajes

🚀 Estado del Proyecto

CONTRATO DESPLEGADO EXITOSAMENTE en la red de prueba de Stellar ✅ FRONTEND COMPLETAMENTE DESARROLLADO con UI/UX profesional ✅ SISTEMA DE PAGOS NFC implementado y funcional ✅ INTEGRACIÓN BLOCKCHAIN operativa

  • ID del contrato: CAVEUW56FPSLPRU4MQXV2JLK5UKEH2H2IZBEKPJFWSCWFWID6565SIY2
  • Red: Testnet de Stellar
  • Estado: 100% funcional

🛠️ Tecnologías Utilizadas

Backend (Blockchain)

  • Soroban SDK: v22.0.8
  • Rust: Para el desarrollo del contrato
  • Stellar Testnet: Para pruebas y desarrollo
  • WebAssembly (WASM): Para la ejecución del contrato

Frontend (Web)

  • React 18: Biblioteca de interfaz de usuario
  • Styled Components: CSS-in-JS para estilos
  • Framer Motion: Animaciones y transiciones
  • React Router: Navegación entre páginas
  • React Icons: Iconografía moderna

📁 Estructura del Proyecto

.
├── contracts/
│   └── transport/           # Contrato principal de transporte
│       ├── src/
│       │   └── lib.rs       # Código fuente del contrato
│       └── Cargo.toml       # Configuración del contrato
├── frontend/                 # 🆕 APLICACIÓN WEB COMPLETA
│   ├── src/
│   │   ├── components/      # Componentes reutilizables
│   │   ├── pages/           # Páginas de la aplicación
│   │   ├── styles/          # Estilos globales
│   │   └── config/          # Configuración del contrato
│   ├── public/              # Archivos públicos
│   └── package.json         # Dependencias del frontend
├── target/                   # Archivos compilados
├── Cargo.toml               # Configuración del workspace
├── README.md                # Este archivo
├── config.json              # Configuración del contrato
├── test-transport.ps1       # Script de pruebas (PowerShell)
└── setup-frontend.ps1       # 🆕 Script de configuración del frontend

🔧 Funciones del Contrato

🔐 Funciones de Administración

  • initialize(admin, payment_token, nft_contract, viajes_for_reward) - Inicializa el contrato
  • get_admin() - Obtiene la dirección del administrador
  • update_reward_config(viajes_required, active) - Actualiza configuración de recompensas

👨‍💼 Funciones de Choferes

  • registrar_chofer(chofer_id, wallet_chofer) - Registra un chofer
  • get_chofer_wallet(chofer_id) - Obtiene la wallet de un chofer

💰 Funciones de Pagos

  • pagar_viaje(pasajero, chofer_id, monto) - Procesa pago de viaje
  • get_viajes_pasajero(pasajero) - Obtiene número de viajes de un pasajero

🎁 Funciones de Recompensas

  • get_reward_config() - Obtiene configuración de recompensas
  • mint_reward_nft(pasajero, viajes_milestone) - Mintea NFT de recompensa

🌐 Frontend Web - Características

🎨 Diseño y UX

  • Interfaz moderna con gradientes y sombras
  • Responsive design optimizado para móviles
  • Animaciones fluidas con Framer Motion
  • Sistema de colores profesional y accesible

📱 Páginas Principales

  • 🏠 Home: Landing page con hero section y características
  • 💳 Pagos NFC: Sistema completo de pagos con NFC y tarjeta
  • 👨‍💼 Registro Chofer: Gestión de choferes
  • 🎁 Recompensas: Sistema de NFTs y recompensas
  • 📊 Dashboard: Panel de control y estadísticas
  • 👤 Perfil: Gestión de usuario

💳 Sistema de Pagos NFC

  • Pagos instantáneos con tecnología NFC
  • Alternativa con tarjeta para mayor compatibilidad
  • Historial completo de transacciones
  • Validaciones en tiempo real
  • Integración blockchain para seguridad

🚀 Cómo Usar el Proyecto

1. Contrato (Backend)

# Compilar para WASM
cargo build --package transport --target wasm32-unknown-unknown --release

# Desplegar el contrato
soroban contract deploy \
  --wasm target/wasm32-unknown-unknown/release/transport.wasm \
  --source-account tu-cuenta \
  --network testnet

2. Frontend (Web)

# Navegar al directorio frontend
cd frontend

# Instalar dependencias
npm install

# Iniciar en modo desarrollo
npm start

# Abrir en navegador: http://localhost:3000

3. Script Automático

# Ejecutar script de configuración automática
.\setup-frontend.ps1

🧪 Pruebas del Contrato

El contrato ya está probado y funcionando en la red de prueba. Puedes ejecutar las siguientes consultas:

Verificar Estado

# Configuración de recompensas
soroban contract invoke --id CAVEUW56FPSLPRU4MQXV2JLK5UKEH2H2IZBEKPJFWSCWFWID6565SIY2 --source-account admin-account --network testnet -- get-reward-config

# Admin del contrato
soroban contract invoke --id CAVEUW56FPSLPRU4MQXV2JLK5UKEH2H2IZBEKPJFWSCWFWID6565SIY2 --source-account admin-account --network testnet -- get-admin

🔗 Enlaces Útiles

💡 Próximos Pasos

  1. ✅ Integración con Freighter - Conectar wallet real para transacciones
  2. ✅ Tokens de Pago - Implementar tokens reales para pagos
  3. ✅ Contrato NFT - Crear contrato NFT para recompensas
  4. ✅ Interfaz de Usuario - Frontend web completamente funcional
  5. 🚀 Despliegue en Mainnet - Mover a red principal de Stellar

🎯 Características Destacadas

  • Contrato completamente funcional y desplegado
  • Frontend web moderno con React y diseño profesional
  • Sistema de pagos NFC implementado y funcional
  • Sistema de autenticación implementado
  • Manejo de eventos para tracking de transacciones
  • Configuración flexible de recompensas
  • Arquitectura escalable para futuras funcionalidades
  • UI/UX profesional optimizado para móviles

🎨 Características del Frontend

🎭 Animaciones

  • Framer Motion para transiciones suaves
  • Animaciones de entrada para componentes
  • Hover effects interactivos
  • Loading states animados

📱 Responsive Design

  • Mobile First approach
  • Breakpoints optimizados
  • Touch friendly interface
  • Adaptive layouts

🎨 Sistema de Diseño

  • Variables CSS para consistencia
  • Paleta de colores profesional
  • Tipografía moderna (Inter + Poppins)
  • Espaciado sistemático

🔧 Scripts Disponibles

PowerShell

  • .\setup-frontend.ps1 - Configuración automática del frontend
  • .\test-transport.ps1 - Pruebas del contrato

Frontend

  • npm start - Servidor de desarrollo
  • npm run build - Build de producción
  • npm test - Ejecutar pruebas

🤝 Contribuir

Para contribuir al proyecto:

  1. Fork el repositorio
  2. Crea una rama para tu feature
  3. Implementa los cambios
  4. Ejecuta las pruebas
  5. Envía un Pull Request

📄 Licencia

Este proyecto está bajo la licencia MIT. Ver el archivo LICENSE para más detalles.


🎉 ¡Tu sistema completo de transporte está funcionando perfectamente en Stellar con frontend web profesional!

🚀 Para empezar rápidamente:

  1. Ejecuta: .\setup-frontend.ps1
  2. Navega a: cd frontend
  3. Inicia: npm start
  4. Abre: http://localhost:3000

¡Disfruta de tu aplicación web de transporte con blockchain y NFC! 🚗💳✨

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages