Skip to main content

The IOTA Repository

You can find all the official crates and tools offered by IOTA in the IOTA monorepo. It contains all the source code used to build on and run the IOTA network. The following section will give a brief overview of the most important folders:

  • apps Contains the source code for the main web applications that IOTA runs, for example, the IOTA Wallet.
  • crates: Contains all the Rust crates that are part of the IOTA system.
  • dapps: Contains some examples of decentralized applications built on top of IOTA, such as Kiosk or Sponsored Transactions.
  • dashboards: Currently empty.
  • doc: Contains deprecated documentation related to Move and IOTA.
  • docker: Contains the docker files needed to spin up a node, an indexer, a Full node, or other services.
  • docs: Contains this documentation and the source for this site.
  • examples: Contains examples of apps written for IOTA and smart contracts written in Move.
  • external-crates: Contains the source code for the Move programming language.
  • kiosk: Contains the source code of the IOTA Kiosk extensions and rules, as well as examples.
  • nre: Contains information about node and network reliability engineering.
  • scripts: Contains a number of scripts that are used internally.
  • sdk: Contains the source code for different tools and SDKs, such as the IOTA TypeScript SDK, Kiosk SDK, BCS, dApp kit, etc.
  • iota-execution: Contains the source code responsible for abstracting access to the execution layer.

The following primary directories offer a good starting point for exploring the IOTA codebase:

Branch and Network Structure

The main branches in the IOTA repository correspond to its networks (devnet, testnet, mainnet) plus a develop branch with the most recent changes.

Devnet

The devnet branch is the latest stable build of IOTA. Choose the devnet branch if you want to build or test on IOTA Devnet. If you encounter an issue or find a bug, it may already be fixed in the develop branch. To submit a PR, you should push commits to your fork of the develop branch.

Testnet

The testnet branch includes the code running on the IOTA Testnet network.

Mainnet

The mainnet branch includes the code running on the IOTA Mainnet network.

Develop

The develop branch includes the most recent changes and updates. Use the develop branch if you want to contribute to the IOTA project or to experiment with cutting-edge functionality. The develop branch might include unreleased changes and experimental features, so use it at your own risk.# The IOTA Repository