Pre-requisitos
Clonar repositorio
Para clonar el repositorio, ejecuta el siguiente comando en tu terminal:
git clone https://github.com/Racks-Community/MrCryptoIndexer.gitcd MrCryptoIndexer
Copiar variables de entorno
cp .env.example .env
Configurar variables de entorno
La única variable de entorno obligatoria para configurar es RPC_URL
, esta es la API de acceso a la blockchain de Polygon.
Las demás pueden dejarse con los valores por defecto (no recomendable para producción).
Puedes conseguirla una propia en Alchemy
Debería tener un formato similar a este:
RPC_URL=https://polygon-mainnet.g.alchemy.com/v2/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Levantar el entorno
Para levantar el entorno, utilizado docker compose
docker compose up --build -d
En la terminal deberíamos ver algo similar a esto:
CLI Building entry: src/server.tsCLI Using tsconfig: tsconfig.jsonCLI tsup v8.0.0CLI Using tsup config: /app/tsup.config.tsCLI Target: node18CLI Cleaning output folderCJS Build startCJS dist/server.js 2.69 MBCJS ⚡️ Build success in 198msDTS Build startDTS ⚡️ Build success in 5032msDTS dist/server.d.ts 13.00 B
> mrcryptoindexer@1.0.0 build:schema> ts-node -r tsconfig-paths/register src/schema/index.ts
Indexer stared ⚒️ at Tue, 21 Nov 2023 16:55:28 GMT🚀 Server ready at: http://127.0.0.1:4000⭐️ See sample queries: http://pris.ly/e/ts/graphql#using-the-graphql-api
Current block number: 50219518indexing from block 25839541 to 25939540indexing from block 25939541 to 26039540indexing from block 26039541 to 26139540...
Ahora toca esperar a que se sincronice la base de datos con la blockchain, esto tardar un rato, sobre todo al principio.
Indexación terminada
Cuando la indexación haya terminado, deberíamos ver algo similar a esto en la terminal:
Indexer finished ✅ 🎉 😄 at Tue, 21 Nov 2023 18:02:36 GMTWaiting 5 minutes for next indexation ⏰
Y a los 5 minutos, volverá a comenzar la indexación desde donde termino la última vez y así sucesivamente.