> For the complete documentation index, see [llms.txt](https://zokanetwork.gitbook.io/zokanetwork/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://zokanetwork.gitbook.io/zokanetwork/developers/architecture-overview.md).

# Architecture Overview

## Core

The Rust core includes:

* CLI wallet commands.
* Full node daemon.
* Mining and proof-of-work.
* Chain state and fork choice.
* RPC API.
* Private wallet flows.
* Zero-knowledge proof infrastructure.

## Wallet Apps

ZKAPriv is Android/Kotlin/Jetpack Compose. ZSilent Core is Kotlin/JVM and Compose Desktop.

## Frontends

zokaweb and zokaexplorer are TypeScript/React frontends.

## Important Boundaries

| Boundary                        | Why It Matters                                                                                    |
| ------------------------------- | ------------------------------------------------------------------------------------------------- |
| Wallet app to RPC               | RPC should receive chain requests and transaction payloads, not wallet secrets.                   |
| Explorer to private data        | The public explorer should not expose address balances, senders, receivers, or private histories. |
| Desktop UI to local binaries    | ZSilent Core coordinates local commands; private wallet work stays local.                         |
| Consensus constants to releases | Supply, PoW, activation heights, and validation rules need coordinated release handling.          |

## Protocol Modules

The core repository separates mining, state, network, private wallet logic, ZK proof infrastructure, and encrypted wallet storage. This separation is useful when reviewing risk: a UI text change should not affect consensus, and a node sync change should not alter wallet secret handling.


---

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

```
GET https://zokanetwork.gitbook.io/zokanetwork/developers/architecture-overview.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.
