# Tutorials for newcomers

## Type of repositories on Obyte Github page

Obyte Github page is located there <https://github.com/byteball>

![Obyte repository dependency graph](https://4279191364-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LQ9JnmICvb8mNGyCZOi%2Fuploads%2Fgit-blob-ae60e1f636c4fc22fe1bce2498ae783f119a26fd%2Frepository_graphic_-_tarmo_-_version_4_Dark_Grey_Text-01.jpg?alt=media)

### ocore - main core library

* syncs full database if full node.
* relays storage units if full node.

### obyte-gui-wallet - wallet apps with GUI

* inherits `ocore` library.
* light node or full node.
* wallet functionality.
* graphical user interface for Windows, MacOS, Linux, Android and iOS.

### headless-obyte - wallet for server without GUI

* inherits `ocore` library.
* light node or full node.
* wallet functionality.
* can be controlled via chat.
* can be controlled via [JSON-RPC service](https://developer.obyte.org/json-rpc/running-rpc-service).

### obyte-witness - nodes that determine the main chain

* inherits `headless-obyte` and `ocore` library.
* only full node.
* recommended to be behind TOR.
* post new units (moves itself funds or posts oracle data) serially.

### obyte-relay - peer that can be connected directly

* inherits `ocore` library.
* only full node.
* accepts incoming connections.
* provides new units, stable units, balances & suitable parents to light nodes.
* notifies wallet apps about new witnesses.

### obyte-hub - hub that relays chat messages

* inherits `obyte-relay` and `ocore` library.
* relays encrypted chat messages between devices.
* notifies wallet apps about new app version.
* shows list of chat bots that are available to pair with.
* shows metadata about assets.

### bot-example - template for new projects

* inherits `headless-obyte` and `ocore` library.
* customized [chat messages handling](https://developer.obyte.org/list-of-events#a-new-message-string-type-message-has-been-received) can be added.
* customized actions on [new transactions](https://developer.obyte.org/list-of-events#new-unstable-unit) and [stable transactions](https://developer.obyte.org/list-of-events#stable-unit) can be added.
* can be used as a base of any new project that needs Obyte wallet functionality.

## Tutorials to setup a node

* [Setting up headless wallet (Debian/Ubuntu Linux)](https://developer.obyte.org/tutorials-for-newcomers/setting-up-headless-wallet)
* [Setting up headless wallet with Docker image](https://github.com/byteball/headless-obyte#docker-image)
* [Setting up headless wallet on Raspberry Pi](https://medium.com/obyte-help/running-obyte-wallet-on-headless-raspberrypi-3-56007da32739)

## Examples of using these libraries

* [Ping-poing payments](https://developer.obyte.org/tutorials-for-newcomers/ping-pong-paymets)
* [Logging into website](https://developer.obyte.org/tutorials-for-newcomers/log-in-on-website-with-byteball)
* [Weather oracle](https://developer.obyte.org/tutorials-for-newcomers/weather-oracle)
* [Bet on weather bot](https://developer.obyte.org/tutorials-for-newcomers/bet-on-weather-bot)
