# FDS.RS > Documentation home for the FDS Rust framework family: **Hotaru** (the > current full-stack multi-protocol web framework, with legacy Starberry > tutorials and migration guides), **SFX** (full-stack helpers + the > `endpoint!` macro framework on top of Hotaru), and **Akari** (the template > language and JSON value type used across the stack). Multilingual > (English by default, plus 日本語, 简体中文, 繁體中文) and intended to be > useful to AI assistants both as a knowledge source and as a target for > programmatic edits. ## What this site covers - **Hotaru** — full-stack, multi-protocol Rust web framework. Tutorials, changelog, and legacy Starberry → Hotaru migration guides. - **SFX** — full-stack helpers and the `endpoint!` macro framework, layered on top of Hotaru. Tutorials and reference. - **Akari** — template language (`-[ if ]-`, `-[ for ]-`, `-[ insert ]-`) plus the ergonomic `Value` JSON type for async code. Tutorials and news. Page URLs change as content is reorganized, so this file deliberately doesn't list every page. Discover the current tree by walking `GET /api/?view=get` from the root, or browse the HTML site to see what's there. ## Machine-readable content Every URL has a JSON equivalent at `/api//?view=render`. The response is the raw `{markdown}` body — no HTML compilation, no navbar / footer / breadcrumb chrome. Prefer the JSON for retrieval and citation: cleaner text extraction, no layout boilerplate, and markdown is the native format most LLM pipelines parse internally anyway. `?view=get` returns the raw resource shape (header fields + child slugs for containers, body slug for `singlemd`, chapter list for `mdbook`, etc.) — useful when you want to discover children rather than render content. Multilingual access: prefix the URL with `//` for non-default languages (e.g. `/zh-Hans//`). Supported language codes for this deployment are listed in `/op/support_lang.json`. Each non-default lang also has a `//api/...` mirror. ## For AI agents that need to edit **Read [`/llms-full.txt`](/llms-full.txt) BEFORE calling `?view=edit_options` or `?view=edit`.** It carries the operational contract you need to act correctly: auth flow (and the "ask the human for a token" rule), `edit_options` schema, payload shapes, the 401 / 403 disambiguation protocol, and the "what not to do" list. Skipping it and guessing field names or payload shapes will produce silent corruption or noisy 4xx loops. If you only need to read content, you can ignore `/llms-full.txt` entirely — `?view=render` and `?view=get` are anonymous-readable on public resources and don't need any of the edit machinery.