# Introduction

The Orakl Network is a service composed of [hybrid smart contracts](https://blog.chain.link/hybrid-smart-contracts-explained/) utilizing both on-chain and off-chain computation in order to deliver following solutions:

* [Verifiable Random Function (VRF)](https://docs.orakl.network/developers-guide/vrf)
* [Request-Response](https://docs.orakl.network/developers-guide/request-response)
* [Data Feed](https://docs.orakl.network/developers-guide/data-feed)

## On-Chain Orakl Network

On-chain implementation is located under [`contracts` directory](https://github.com/Bisonai/orakl/tree/master/contracts) with all relevant smart contracts, their tests, and deployment scripts. Node operators do not have to be concerned with the content of the `contracts` directory, but they need to know about the up-to-date smart contract addresses and their latests settings in order to setup their nodes properly. In cases, where node operator needs to know more details, we are going to explain all necessary information.

## Off-Chain Orakl Network

Off-chain part is split to several auxiliary micro services, and the main oracle solution:

* [Orakl Network API](https://docs.orakl.network/node-operators-guide/api)
* [Orakl Network CLI](https://docs.orakl.network/node-operators-guide/cli)
* [Orakl Network Fetcher](https://docs.orakl.network/node-operators-guide/broken-reference)
* [Orakl Network VRF](https://docs.orakl.network/node-operators-guide/vrf)
* [Orakl Network Request-Response](https://docs.orakl.network/node-operators-guide/request-response)
* [Orakl Network Data Feed](https://docs.orakl.network/node-operators-guide/data-feed)
* [Orakl Network Proof of Reserve](https://docs.orakl.network/node-operators-guide/proof-of-reserve)
* [Orakl Network Delegator](https://docs.orakl.network/node-operators-guide/delegator)
* [Helm Chart Infra Setup](https://docs.orakl.network/node-operators-guide/broken-reference)
