Welcome to the Octez and Protocol Documentation!¶
To start browsing, either follow one of the guided paths below, or directly pick any topics in the documentation menu.
Never heard of Octez? Let’s get acquainted!
Octez & the Tezos protocol are an implementation of the Tezos blockchain , a distributed consensus platform with meta-consensus capability.
This means that, unlike other blockchains like Bitcoin or Ethereum, Tezos comes to consensus not only about the state of its ledger, but also about how the protocol and the nodes should adapt and upgrade.
This is a fundamental design choice, allowing Tezos to be seamlessly upgradable and continuosly evolving. Due to this feature, Tezos is built to last, and always stay at the leading edge of blockchain technology.
To learn more about Tezos, the Tezos documentation.
To learn more about how Octez & the protocol fit into Tezos and its ecosystem, see Octez & Protocol overview.
Newcomer to Octez? Start participating to Tezos using Octez!
Start participating to Tezos by following the
Introduction section in the documentation menu.
These tutorials explain:
how to get the latest release of Octez (a complete, open-source implementation of Tezos) in various forms,
how to start using Octez to join Tezos,
different ways to participate to the network,
Already a user? Here is everything you need to know!
If you already installed Octez and can participate in the Tezos blockchain, the most useful resources are grouped in the
User manual section in the documentation menu.
If you intend to participate to Tezos not just as a user, but rather as a baker, you should also check more specialized documentation such as the Baking section on Open Tezos.
Want to know how it works? It’s no secret, let us explain!
If you want to know more about the technology underlying Octez and the Tezos protocol, the
Reference manual section in the documentation present their rationale, main design principles, and some high-level implementation principles:
Octez software architectureexplains how the architecture of the Octez implementation instantiates the high-level architectural principles of any Tezos implementation, consisting in a “shell” and a “protocol” .
Octez Shelldetails some major subsystems of The Octez Shell.
Octez Protocolexplains the design principles and the salient features of the Tezos protocol. In fact, these pages are versioned for several Tezos protocols, current or upcoming, such as: the active protocol, a protocol proposal under development, and possibly some protocol(s) that are currently candidate(s) for future adoption.
Other pages are related to the important Smart Rollups feature, and present tools such as the Smart rollup node and Data Availability Committees.
Are you a Tezos developer? Find here some useful reference pages!
This website complements those resources with reference documentation, mostly in section
Developer reference, including:
Principles of the RPC interface such as the JSON/RPC interface
A complete reference of Michelson: the language of Smart Contracts in Tezos
Guidelines for writing smart contracts in Michelson, such as Michelson Anti-Patterns.
Are you a platform developer? Here are the nuts and bolts!
One major focus of this website is on resources for platform developers, that is, contributors to Octez (Octez developers) and contributors to the Tezos protocol (protocol developers).
Platform developers can find a rich set of explanations, tutorials, and howtos, mainly in the
Contributing section, including:
programming tutorials covering various libraries and frameworks specific to the Octez OCaml implementation, such as using Generalized Algebraic Data Types (GADTs), using The Error Monad, using The clic library, Using The Event Logging Framework, etc.
a whole subsection on the various testing frameworks for Octez, explaining how to use them and how to add different kinds of tests
Platform developers are also provided reference materials for internal APIs of Octez, such as: