Glossary
General
ABI
Application Binary Interface. It's a JSON-formatted description of how to interact with a smart contract on a blockchain, typically Ethereum. The ABI defines the contract's functions, their inputs and outputs, allowing other programs or users to call the contract's functions correctly.
block number
A unique identifier for a block in the blockchain. It's a number that increases sequentially as new blocks are added to the blockchain. Each block contains a number of transactions, and the block number is used to identify the block that contains a specific transaction.
callback
A function with a specific signature used in event handling. In DipDup there are two types of callbacks, handlers and hooks.
config
A configuration file which defines a project's structure, settings, environment configurations, and other metadata. Examples include pyproject.toml
in Python, compose.yaml
in Docker Compose. DipDup projects start with dipdup.yaml
file in the project's root. See the full reference.
context
In DipDup, an object passed as a first argument to all callbacks. Provides access to the current state of the indexer and various methods to interact with it.
datasource
DipDup
An open source framework for building smart contract indexes for the Tezos network.
Docker
An open-source platform for creating, deploying, and managing containerized applications, improving consistency and reducing infrastructure overhead.
Docker Compose
A tool for defining and managing multi-container Docker applications, using a YAML file to configure services, networks, and volumes, simplifying application deployment and scaling.
environment variables
GraphQL
A query language and runtime for APIs that enables clients to request only the data they need, offering more flexibility and efficiency compared to traditional REST APIs.
handler
Hasura
An open-source engine that connects to databases and microservices, providing real-time GraphQL APIs for faster and efficient data access.
head
The latest block on the blockchain. In DipDup terminology, this term applies to Datasources.
hook
A user-defined function that is executed at specific points in the lifecycle of a DipDup project. Unlike handlers, hooks are not tied to specific indexes and can be called from anywhere in the code.
index
indexer
A program that reads data from a blockchain and stores it in a database for quick and easy querying.
job
JSONSchema
level
In DipDup, block number.
model
A Python class representing a database table, defined using the Tortoise ORM library.
package
A directory containing all the files needed to run a DipDup project. DipDup projects must be a valid Python package. See the Package page.
PostgreSQL
A powerful, open-source object-relational database system known for its reliability, robustness, and performance, widely used for managing structured data.
Prometheus
An open-source monitoring and alerting toolkit designed for reliability and scalability, used to collect and process metrics from various systems, providing valuable insights into application and infrastructure performance.
RPC API
RPC stands for Remote Procedure Call. A protocol used to communicate with Tezos nodes and interact with the blockchain. DipDup receives minimal amount of data from RPC API due to slow performance relatively to TzKT and other APIs.
schema
SDK
A toolkit for developing smart contract indexing applications.
Sentry
A real-time error tracking and monitoring platform that helps developers identify, diagnose, and fix issues in applications, improving overall software quality and performance.
sync level
Tortoise
A Python asyncio library for defining models and relationships between tables, simplifying asynchronous database interactions and data management.
transaction
typeclass
Tezos-specific
big map
big_map object covered in big map index page.
contract storage
Persistent data storage within a smart contract, holding the contract's state and any associated data.
entry points
Functions defined within a smart contract that can be called by external contract invocations or other contracts.
origination
The process of deploying a new smart contract on the Tezos network, creating a new originated contract address.
TzKT
A popular Tezos indexer API that provides a more user-friendly way to access Tezos blockchain data compared to the RPC API, often used for building applications on top of Tezos.