Competitions

TypeScript Web Privado

Lenguaje

TypeScript

Categoria

Web

Estado

Privado

Competitions es un marketplace descentralizado para contratos de apuestas inteligentes que soporta múltiples cadenas de bloques simultáneamente. Permite a los usuarios desplegar y participar en competiciones verificadas por smart contracts con total transparencia.

Características principales

  • Soporte multi-cadena: Ethereum, Polygon, Arbitrum, Optimism, BSC y Solana.
  • Autenticación con wallet: MetaMask, Phantom vía NextAuth.js + SIWE (Sign-In With Ethereum); sin contraseñas.
  • Despliegue CREATE2: direcciones de contratos determinísticas, predecibles antes del despliegue.
  • Optimización de gas: soporte EIP-1559 con estimación inteligente de tarifas.
  • Multicall batching: agrupa múltiples lecturas de contratos en una sola llamada RPC.
  • Control de acceso RBAC: roles de Admin, Moderador y Usuario con permisos granulares.
  • Internacionalización: inglés y español.

Stack tecnológico

  • Framework: Next.js 15.5 con App Router, TypeScript modo estricto.
  • Base de datos: PostgreSQL con Drizzle ORM (migrando desde Prisma).
  • UI: Tailwind CSS + shadcn/ui + Radix UI.
  • Blockchain: soporte multi-cadena con caché avanzada y deduplicación de peticiones.

Inicio rápido

npm install
npm run db:setup   # Inicializar base de datos
npm run dev        # http://localhost:3000

Seguridad

  • Autenticación exclusiva por wallet (sin contraseñas).
  • Validación de inputs con esquemas Zod.
  • Prevención de inyección SQL mediante ORM.
  • Rate limiting en todas las peticiones.

Compartir