Welcome to our beginner's guide to developing a history-powered dApp using Relic Protocol. Relic Protocol offers a trustless way for smart contracts to access any historical data on the Ethereum. This enables dApps to use historical data such as storage slots, event logs, and block headers - all without trusting off-chain oracles!

In this tutorial, we'll guide you through the process of developing an ERC-721-like contract that issues NFTs based on an account's birth-block. You'll learn how to build a history-powered dApp using the Relic Protocol's SDK.

If you're new to Solidity development using Hardhat, we highly recommend starting with the Hardhat tutorial before proceeding with this one.

This tutorial includes several sections:

  • Creating a new project
  • Writing and testing contracts
  • Applying Relic Protocol to contracts
  • Deploying to Local Network
  • Building a simple frontend application to interact with contracts

To follow this tutorial, you need to be able to:

  • Operate a Terminal
  • Write code in Solidity and Typescript
  • Build dApps with Hardhat
  • Understand the basics of how smart contracts work
  • Set up a Metamask wallet