DipDup Docs
DipDup is a Python framework for building smart contract indexers. It helps developers focus on business logic instead of writing a boilerplate to store and serve data.
Get started in three steps! DipDup installation and creating a new project are fully interactive and take just a few minutes! Follow the instructions on the right to get started. Ready to go beyond the basics? Time to write the project config and implement data handlers.
# Install with `pipx` or our installer
curl -Lsf https://dipdup.io/install.py | python3.12
# Create a new project interactively
dipdup new
# Enjoy your indexer!
cd my_project && dipdup run
Installer script performs compatibility checks, installs pipx for the current user and DipDup using it.
Quickstart
Get your first indexer running in minutes. You only need a Linux/macOS machine with Python 3.12 installed. In this short guide we will create an indexer for a fungible token contract. Our goal is to save all token transfers to the database and then calculate some statistics of its holders' activity.
EVM Start taking the first steps when working with DipDup for EVM.
Let's create an indexer for the USDt token contract.
Let's create an indexer for the USDt token contract.
Starknet" Discover the basics of DipDup for Starknet.
Let's create an indexer for the USDt token contract.
Let's create an indexer for the USDt token contract.
Tezos A short guide for a quick start with DipDup for Tezos.
Let's create an indexer for the tzBTC FA1.2 token contract.
Let's create an indexer for the tzBTC FA1.2 token contract.
Featured
Indexes for any task Multiple indexes are available for different workloads. Every index is linked to a specific datasource and provides a set of handlers for different kinds of data.
Magic GraphQL API DipDup provides seamless integration with Hasura GraphQL Engine to expose your data to the client side. It's a powerful tool that allows you to build a GraphQL API on top of your database with minimal effort.
Advanced ORM To store indexed data in the database, you need to define models that represent database tables. Our storage layer is based on Tortoise ORM. We have extended it with some useful features like a copy-on-write rollback mechanism, caching, and more.
Instant deployment You can run DipDup in Docker containers. It's a convenient way to deploy your indexer to the cloud. This guide will show you how to do it with Compose and Swarm environments.
Battle-tested by the best Many major players like Rarible, Youves and Kord.fi are already using DipDup in production. Check out the full list and discover all the use cases.
Resources
Changelog Complete list of changes in recent DipDup versions.
Read more -> Troubleshooting Got stuck? Check out the list of common issues and their solutions.
Read more -> F.A.Q. Find answers to the most frequently asked questions.
Read more ->Help and tips -> Join our Discord
Ideas or suggestions -> Issue Tracker
GraphQL IDE -> Open Playground