# Welcome to Boson Network

**Boson** is a fully decentralized, peer-to-peer network for secure communication and data sharing — with no central registry, no usernames, and no certificate authorities. Every node and every user is identified by an Ed25519 public key, and everything else is built on top of a secure Kademlia distributed hash table (DHT).

Boson is **permissionless**: anyone can run a node, join the network, publish a service, or build an application on it.

## What you can build

* **Messaging apps** — end-to-end encrypted, multi-device, federated messaging.
* **Self-sovereign identity** — W3C DID identities anchored to the DHT.
* **Decentralized object storage** — content-addressed, deduplicated, federated binary storage.
* **Self-hosted services behind NAT** — expose a home server or device to the internet with no port forwarding or static IP.

## How Boson is structured

Boson is a **two-layer** network:

```
  Layer 2 — Application Services
  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐
  │  WebGateway  │  │   Messaging  │  │  Ion Store   │  │ Active Proxy │
  │   (HTTPS)    │  │   (MQTTS)    │  │   (HTTPS)    │  │    (TCP)     │
  └──────────────┘  └──────────────┘  └──────────────┘  └──────────────┘

  Layer 1 — Boson DHT
  ┌──────────────────────────────────────────────────────────────────────┐
  │   Kademlia DHT · Ed25519 identity · nodes, values & peers · UDP      │
  └──────────────────────────────────────────────────────────────────────┘
```

* **Layer 1 — the DHT** carries node routing, mutable/immutable values, and peer (service) announcements. It is the discovery and signalling layer for everything above it.
* **Layer 2 — services** run on super nodes and announce themselves to the DHT, so clients can find them without hard-coded addresses.

New to all of this? Start with the [Architecture Overview](/core-concepts/architecture.md).

## Choose your path

{% hint style="info" %}
Pick the path that matches what you want to do. Each is an ordered reading list. See [Choose Your Path](/introduction/choose-your-path.md) for the full guide.
{% endhint %}

* 🧭 **New to Boson?** → [Architecture Overview](/core-concepts/architecture.md) → [Node Types](/core-concepts/node-types.md) → [Getting Started](/getting-started/install.md)
* 🧩 **Building an application?** → [Build Applications](/build-applications/build-apps.md) → [Java SDK](/build-applications/java-sdk.md) or [HTTP / REST](/build-applications/http-rest.md)
* 🛠️ **Building a service?** → [Layer-2 Services](/core-concepts/services-overview.md) → [Build Services](/build-services/build-services.md)
* 🖥️ **Running a node?** → [Run & Operate a Node](/run-and-operate-a-node/operate.md)
* 🤝 **Contributing?** → [Contribute](/contribute/contribute.md)

## Project links

* **GitHub:** [github.com/bosonnetwork](https://github.com/bosonnetwork)
* **Open-source SDKs:** [Boson.Core](https://github.com/bosonnetwork/Boson.Core) and the client libraries
* **Public nodes:** [public-boson-nodes](https://github.com/bosonnetwork/public-boson-nodes)
* **Community:** [Telegram](https://t.me/awesameboson)


---

# Agent Instructions: 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:

```
GET https://docs.bosonnetwork.io/readme.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
