Skip to content

RoboVault/robo-arkiver

Repository files navigation

Fast and Fully Type-Safe Blockchain Indexer

Features

  • Fast - Maximize indexing speed by minimizing I/O and caching data in memory
  • Type-Safe - End-to-end type-safety with TypeScript
  • Flexible - Write custom handlers to process data however you want
  • Ergonomic - Minimal configuration and easy to test locally
  • Multi-Chain - Index multiple chains in a single Arkive
  • GraphQL - Serve your data via a GraphQL API
  • Open-Source - Arkiver is open-source and free to use
  • Self-Hosted - Run Arkiver on your own infrastructure
  • Cloud-Hosted - Deploy your Arkive to the Arkiver cloud

... and a lot more!

Overview

import { createEntity, Manifest } from 'https://deno.land/x/robo_arkiver/mod.ts'
import { ERC20 } from './ERC20.ts'

const manifest = new Manifest('my-arkive')

manifest
	.chain('mainnet')
	.contract(ERC20)
	.addSources({ '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2': 16987011n })
	.addEventHandlers({
		'Transfer': ({ logger, event }) => {
			logger.info(`Transfer: ${event.from} -> ${event.to}: ${event.value}`)
		},
	})

export default manifest.build()

Documentation

(WIP)

License

MIT License