Skip to content

1. Create a new Witnet-enabled project

This article is part of the beginner tutorial on creating a totally decentralized Bitcoin price feed on Ethereum with Solidity and Witnet.

Using the Witnet Truffle Box

If you are creating a new project from scratch, the quickest way to get things working is using Truffle to download a Witnet-enabled project template:

mkdir bitcoin-price-feed
cd bitcoin-price-feed
truffle unbox witnet/truffle-box

You can keep reading this page to learn more about the Truffle box boilerplate, but if you are feeling impatient you can jump into the next step.

Project folder structure

After unboxing you should find yourself in a project that has been populated with the following directory structure:

bitcoin-price-feed
├── contracts       // Where your Solidity contracts will be
│   └── requests    // Where Witnet requests end up after compilation
├── migrations      // Deployment scripts
├── requests        // Witnet request source code (.js files)
├── test            // Scripts for testing your contracts
└── witnet          // Witnet libraries⁠⁠—nothing too interesting

Next step: define aggregations

You are now ready to move forward into defining the data sources to be used.

Remember: You are not alone!

You are invited to join the Witnet Community Discord. Members of the Witnet community will be happy to answer your questions and doubts, as well as assisting you through this tutorial.