Características principales 🚀

Configuración sin complicaciones

Puede usar nuestra imagen pública de Docker o iniciarlo en modo de desarrollo con una configuración mínima.

Opciones flexibles de wallet

Utilice una Sequence Smart Wallet con claves privadas gestionadas localmente o integre de forma segura AWS/GCP KMS para mayor seguridad.

Gestión de webhooks

Aproveche nuestro indexador de alto rendimiento para crear y configurar sus propios webhooks personalizados mediante el eficiente Sequence Indexer.

Integración con Tenderly

Utilice Tenderly para depurar fácilmente sus transacciones; obtiene una URL de simulación para cada transacción ejecutada a través de Sidekick.

Verificación automática de contratos

Verificar contratos es tedioso, Sidekick lo hace por usted en cada contrato desplegado.

Integrado con Sequence Builder

¿Ya tiene un proyecto en Sequence Builder? Importe todos los datos de sus contratos a Sidekick con una sola llamada a la API.

Panel integrado de Bull MQ

Cree, monitoree y gestione sus tareas en segundo plano.

Swagger UI

Explore la documentación de la API y pruebe los endpoints con Swagger UI

Ejecución de transacciones optimizada

Las transacciones se envían con precios de gas óptimos y se reenvían automáticamente si no se incluyen en el mempool en tres bloques.

Analítica y monitoreo

Sidekick viene integrado con Grafana, Prometheus y Blackbox Exporter para monitorear la salud de su backend.

Acerca del backend wallet

Sidekick crea una Sequence Smart Contract Wallet basada en el EVM_PRIVATE_KEY que usted proporciona, lo que permite patrocinio de gas, agrupamiento y otras optimizaciones.

Para configurar el backend wallet, puedes:

  • Declara tu EVM_PRIVATE_KEY en el archivo .env para una configuración local (no recomendado para producción)
  • Usa el método recomendado: configura AWS o GCP KMS y agrega las credenciales necesarias en el archivo .env.

Para saber cuáles son las credenciales requeridas para configuraciones de wallet local, AWS o GCP, consulte el archivo env.example.

Asegúrese de elegir los tipos de clave correctos en AWS KMS y GCP KMS.

  • AWS KMS: ECC_NIST_P256_KEY_ALIAS
  • GCP KMS: GCP_KEY_RING_NAME

Sidekick está diseñado para integrarse perfectamente con AWS y GCP KMS, permitiéndole usar su propio firmante KMS. Hemos desarrollado adaptadores que hacen que AWS/GCP KMS sean compatibles con el tipo de firmante de ethers, asegurando compatibilidad con la última versión.

Sequence Sidekick brinda a los desarrolladores una solución backend escalable y lista para usar para aplicaciones basadas en blockchain, permitiéndole enfocarse en el desarrollo de su aplicación sin complicaciones de backend.

Inicie con Docker desde la CLI

Hay una imagen pública de Docker disponible en GitHub Container Registry.

docker run -p 7500:7500 \
  -e EVM_PRIVATE_KEY=0x \
  ghcr.io/0xsequence/sidekick

Esto permite iniciar un backend local de Sidekick en el puerto 7500 con las funciones mínimas.

Recomendamos configurar también SEQUENCE_PROJECT_ACCESS_KEY, pero para pruebas proporcionamos una por defecto; puede obtener la suya en Sequence Builder.

Inicie Sidekick en modo de desarrollo

1

Clone el repositorio de Sidekick

git clone https://github.com/0xsequence/sidekick
2

Configure las variables de entorno requeridas

Variables de entorno requeridas

VariableDescription
PROJECT_ACCESS_KEYClave de acceso de Sequence Builder API Keys
EVM_PRIVATE_KEYClave privada para la EOA utilizada para firmar transacciones

Variables de entorno opcionales

VariableDescription
PORTPuerto para el servidor de Sidekick (por defecto: 7500)
HOSTDirección del host para el servidor (por defecto: 0.0.0.0)
REDIS_HOSTHost del servidor Redis (por defecto: localhost)
REDIS_PORTPuerto del servidor Redis (por defecto: 6379)
REDIS_PASSWORDContraseña para el servidor Redis (opcional)
DATABASE_URLCadena de conexión PostgreSQL para la base de datos de Sidekick
SIDEKICK_API_SECRET_KEYClave secreta requerida para acceso de escritura a la API de Sidekick
ETHERSCAN_API_KEYClave de API para Etherscan para habilitar la verificación de contratos
VERIFY_CONTRACT_ON_DEPLOYHabilite la verificación automática de contratos al desplegar (establezca en true para activar)
DEBUGHabilite el registro de depuración (establezca en true para salida detallada)
SIGNER_TYPETipo de firmante a utilizar (local, aws_kms, google_kms)
AWS_REGIONRegión de la cuenta AWS
AWS_ACCESS_KEY_IDID de clave de acceso de AWS
AWS_SECRET_ACCESS_KEYClave secreta de acceso de AWS
AWS_KMS_KEY_IDID de la clave KMS a usar
PROJECTNombre del proyecto GCP
LOCATIONUbicación del proyecto GCP
KEY_RINGNombre del key ring
CRYPTO_KEYNombre de la clave criptográfica
CRYPTO_KEY_VERSIONVersión de la clave criptográfica

Variables de configuración del wallet

Elija una de las siguientes configuraciones:

Para wallet local:

VariableDescription
SIGNER_TYPElocal
EVM_PRIVATE_KEY0x…

Para AWS KMS:

VariableDescription
SIGNER_TYPEaws_kms
AWS_REGIONRegión de la cuenta AWS
AWS_ACCESS_KEY_IDID de clave de acceso de AWS
AWS_SECRET_ACCESS_KEYClave secreta de acceso de AWS
AWS_KMS_KEY_IDID de la clave KMS a usar

Para GCP KMS:

VariableDescription
SIGNER_TYPEgoogle_kms
PROJECTNombre del proyecto GCP
LOCATIONUbicación del proyecto GCP
KEY_RINGNombre del key ring
CRYPTO_KEYNombre de la clave criptográfica
CRYPTO_KEY_VERSIONVersión de la clave criptográfica
3

Asegúrese de tener Docker instalado

Descárguelo desde aquí

4

Inicie Sidekick en un contenedor Docker

pnpm docker:start
5

Verifique la dirección de la backend wallet

curl -X GET 'http://localhost:3000/sidekick/smart-account-address'

Modo desarrollador sin Docker

Si desea hacer cambios en el código y probarlos sin Docker

pnpm install
pnpm dev:withRedis

Esto ejecutará Sidekick y también iniciará un servidor Redis.

Gas Sponsorship

En testnet, patrocinamos todas las transacciones. Sin embargo, en mainnet, usted querrá asegurarse de patrocinar las transacciones para que se procesen correctamente patrocinando el propio contrato. Puede ver más detalles en nuestra solución de Gas Sponsorship para aprender cómo hacerlo.