### Goal:
Integrate Cosmos and/or Polkadot blockchains into Amberdata, utilizing the public Amberdata inbound API, by providing a package that can be run to collect and interact directly with a blockchain node.
### Background:
Amberdata provides context for multiple blockchains, and delivers APIs for interfacing, metrics, full RPC, etc. The core business model is providing the full scope of a full node with all of its capabilities, as well as additional contexts & metrics.
#### How does this work?
Amberdata or partners/private blockchains run full nodes, which keep track of the entire state and data of a blockchain. This node is accessed from a process or proxy directly connecting to read previous data, validate ongoing data, and aggregate all confirmed state as it finalizes. This process keeps track internally about current state and is responsible for signaling re-organized blocks, forks, or any custom logic to a specific blockchain.
### Inbound API Docs:
https://blockchains.amberdata.io/api-explorer/
#### Reference Resources:
* Core: https://github.com/amberdata/inbound-core
* A set of utilities which simplifies interacting with the Inbound API
* Model: https://github.com/amberdata/inbound-domain-model
* Global blockchain data models, with raw and derived types
* Stellar: https://github.com/amberdata/stellar-ingestion-api-module
* Example integration using the above two packages
### Deliverables:
* Language Preferences: Go, Nodejs, Java
* Docker image
* Chain Configuration:
* Node connection variables
* supported blockchain data types
* supported blockchain abilities (EX: IBC, RPC, mainnet/sidechain/parachain)
* **Cosmos:**
* Support Blockchain Data Types: Blocks, Transactions, Validators, Genesis (Needs BRD finalization) (NOTE: Validators & Genesis are in QA currently for amberdata inbound API.)
* RPC Proxy (support all methods except any account/wallet methods)
* Base cryptocurrency support: ATOM
* IBC Proxy (optional, discussion needed)
* Logic for handling connections, blockchain events, runtime, etc.
* **Polkadot:**
* Support Blockchain Data Types: Addresses/Accounts, Blocks, Transactions, logs/events, Validators, Slots/Proposals, Genesis (Needs BRD finalization) (NOTE: Validators, Slots/Proposals & Genesis are in QA currently for amberdata inbound API.)
* RPC Proxy (support all methods except any account/wallet methods)
* Base cryptocurrency support: DOT
* IBC Proxy (optional, discussion needed)
* Logic for handling connections, blockchain events, runtime, etc.