> 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.md).

# Developers

ZOKA is developed across several repositories. The public docs should stay aligned with code and releases. If a claim is not implemented, label it as planned or omit it.

## Main Languages

* Rust for the core node, CLI, wallet logic, mining, state, and RPC.
* Kotlin and Compose for ZKAPriv and ZSilent Core.
* TypeScript, React, and Tailwind for website and explorer frontends.

## Development Principles

Developers should preserve the self-custody boundary:

* Wallet secrets stay in wallet surfaces and local binaries.
* RPC servers provide chain data and accept transactions; they do not custody recovery phrases, scan keys, or spend keys.
* Explorers show public chain metadata, not private wallet histories.
* Consensus changes require tests, release notes, and operator coordination.

When adding UI features, prefer existing APIs and local service boundaries over new ad hoc flows that move secrets into frontends or public infrastructure.


---

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