> For the complete documentation index, see [llms.txt](https://developer.obyte.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.obyte.org/tutorials-for-newcomers.md).

# Tutorials for newcomers

## Type of repositories on Obyte Github page

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

![Obyte repository dependency graph](/files/-Ls2ZaTGRUMG3UMzO8z4)

### 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](/json-rpc/running-rpc-service.md).

### 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](/list-of-events.md#a-new-message-string-type-message-has-been-received) can be added.
* customized actions on [new transactions](/list-of-events.md#new-unstable-unit) and [stable transactions](/list-of-events.md#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)](/tutorials-for-newcomers/setting-up-headless-wallet.md)
* [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](/tutorials-for-newcomers/ping-pong-paymets.md)
* [Logging into website](/tutorials-for-newcomers/log-in-on-website-with-byteball.md)
* [Weather oracle](/tutorials-for-newcomers/weather-oracle.md)
* [Bet on weather bot](/tutorials-for-newcomers/bet-on-weather-bot.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://developer.obyte.org/tutorials-for-newcomers.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
