Skip to content

Commit feb1135

Browse files
committed
update readme
1 parent 5d82d08 commit feb1135

File tree

3 files changed

+61
-14
lines changed

3 files changed

+61
-14
lines changed

LICENSE

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
MIT License
2+
3+
Copyright (c) 2023 RoboLabs
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy of
6+
this software and associated documentation files (the "Software"), to deal in
7+
the Software without restriction, including without limitation the rights to
8+
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
9+
the Software, and to permit persons to whom the Software is furnished to do so,
10+
subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
17+
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
18+
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
19+
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
20+
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

README.md

+39-14
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,47 @@
1-
# RoboArkiver
1+
# [Arkiver](https://docs.arkiver.net)
22

3-
RoboArkiver is a highly configurable and extensible tool for indexing evm data.
3+
Fast and Fully Type-Safe Blockchain Indexer
44

5-
## Run locally
5+
# Features
66

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

9-
- [deno](https://deno.land/)
18+
... and a lot more!
1019

11-
### Run the arkiver locally
20+
# Overview
1221

13-
1. clone the repo
14-
2. setup a supabase project
15-
3. copy .env.sample to .env and fill the supabase variables. you can omit the
16-
influxdb variables if you're not persisting the data
17-
4. run `deno task dev`
22+
```typescript title="manifest.ts"
23+
import { createEntity, Manifest } from 'https://deno.land/x/robo_arkiver/mod.ts'
24+
import { ERC20 } from './ERC20.ts'
1825

19-
### Deploy an arkive
26+
const manifest = new Manifest('my-arkive')
2027

21-
1. Follow
22-
[these steps.](https://github.com/RoboVault/telegraf-indexer/tree/arkive)
28+
manifest
29+
.chain('mainnet')
30+
.contract(ERC20)
31+
.addSources({ '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2': 16987011n })
32+
.addEventHandlers({
33+
'Transfer': ({ logger, event }) => {
34+
logger.info(`Transfer: ${event.from} -> ${event.to}: ${event.value}`)
35+
},
36+
})
37+
38+
export default manifest.build()
39+
```
40+
41+
# Documentation
42+
43+
[(WIP)](https://docs.arkiver.net)
44+
45+
# License
46+
47+
[MIT](LICENSE) License

examples/simple/transferHandler.ts

+2
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ export const transferHandler: EventHandlerFor<typeof erc20, 'Transfer'> =
77
{ event, client, store, contract },
88
) => {
99
const { from, to, value } = event.args
10+
event.transactionHash
11+
event.blockHash
1012

1113
const address = event.address
1214

0 commit comments

Comments
 (0)