From dc5cec443a102e698903a30f3592776c59723e15 Mon Sep 17 00:00:00 2001 From: JeanExtreme002 Date: Sat, 12 Sep 2026 02:49:49 -0300 Subject: [PATCH] docs: group the sidebar with toctree captions The sidebar listed every page under three broad toctrees with no group headers, so the nav read as one long list and the topics were not visible at a glance. Give each toctree a `:caption:`, which the Read the Docs theme renders as a section header in the sidebar, following the same layout the Picklock docs use. The captions are now the only grouping, so the intermediate hub page between a caption and the content no longer earns its place: a caption "User's Guide" led to a page "User Guide" whose body was a "What's covered" restatement of the toctree. Delete `docs/guide/index.md` and list the guide's leaf pages directly under the root captions, retargeting its two inbound links at `guide/opening-process.md`. Split the API reference toctree into three captioned groups as well, and drop the vague "Advanced" caption in favour of "Memory Allocation". Also fix a stale comment in the Makefile that still named Furo as the docs theme; it has been sphinx_rtd_theme since the migration. --- Makefile | 2 +- docs/api/index.md | 16 +++++++++- docs/guide/index.md | 53 ------------------------------- docs/index.md | 74 ++++++++++++++++++++++++++++++++++---------- docs/installation.md | 2 +- 5 files changed, 74 insertions(+), 73 deletions(-) delete mode 100644 docs/guide/index.md diff --git a/Makefile b/Makefile index ba1bd46..0fdb61f 100644 --- a/Makefile +++ b/Makefile @@ -229,7 +229,7 @@ security: @echo "$(GREEN)Security audit completed!$(NC)" # Install the dependencies needed to build the documentation (Sphinx + MyST + -# Furo + extensions, listed in docs/requirements.txt). Also installs the +# the Read the Docs theme + extensions, listed in docs/requirements.txt). Also installs the # package itself in editable mode so autodoc can import it. .PHONY: install-docs install-docs: diff --git a/docs/api/index.md b/docs/api/index.md index 41051a3..03d384c 100644 --- a/docs/api/index.md +++ b/docs/api/index.md @@ -1,7 +1,8 @@ # API Reference Every public class, method and helper PyMemoryEditor exposes. For -task-oriented walkthroughs, see the [User Guide](../guide/index.md). +task-oriented walkthroughs, start at +[Opening a process](../guide/opening-process.md). ## At a glance @@ -20,14 +21,27 @@ task-oriented walkthroughs, see the [User Guide](../guide/index.md). ```{toctree} :maxdepth: 1 +:caption: The Entry Point openprocess enums +``` + +```{toctree} +:maxdepth: 1 +:caption: Objects You Get Back + memory-region remote-pointer pointer-path module-info thread-info +``` + +```{toctree} +:maxdepth: 1 +:caption: Errors and Helpers + errors utilities ``` diff --git a/docs/guide/index.md b/docs/guide/index.md deleted file mode 100644 index e39d77e..0000000 --- a/docs/guide/index.md +++ /dev/null @@ -1,53 +0,0 @@ -# User Guide - -Task-oriented walkthroughs of every PyMemoryEditor workflow, from opening a -process to following multi-level pointer chains. Each page is self-contained -and cross-links to the relevant [API reference](../api/index.md). - -New here? Read the [Quick Start](../quickstart.md) first, then come back for -the in-depth version. - -## What's covered - -- **Core workflow** — open a process, read/write values, and find addresses by - value or byte pattern. This is the classic Cheat Engine loop. -- **Inspecting the process** — enumerate memory regions, loaded modules and - threads. -- **Pointers** — walk pointer chains you know, and reverse-scan to discover the - chains that survive a restart. -- **Advanced** — reserve and release memory inside the target. - -For diagnostics, see [Logging](logging.md) in the Reference section. - -```{toctree} -:caption: Core workflow -:maxdepth: 1 - -opening-process -read-write -searching -pattern-scan -``` - -```{toctree} -:caption: Inspecting the process -:maxdepth: 1 - -memory-regions -modules-threads -``` - -```{toctree} -:caption: Pointers -:maxdepth: 1 - -pointers -pointer-scan -``` - -```{toctree} -:caption: Advanced -:maxdepth: 1 - -allocate-free -``` diff --git a/docs/index.md b/docs/index.md index f74a589..8abf0b6 100644 --- a/docs/index.md +++ b/docs/index.md @@ -31,7 +31,8 @@ scans, freezing values) to a small, friendly API that works **identically on Windows, Linux and macOS**. Get going with the [Installation](installation.md) and [Quick Start](quickstart.md) -pages, then dig into the [User Guide](guide/index.md) for the in-depth walkthroughs. +pages, then work through the guide itself, starting at +[Opening a process](guide/opening-process.md). Prefer to click rather than type? The bundled [GUI app](app.md) gives you a Cheat Engine-style interface for free. @@ -100,48 +101,87 @@ explore, scan and freeze values by clicking. -## User's Guide +## Documentation -This part of the documentation walks you through every workflow, from opening a -process to following multi-level pointer chains, plus the bundled GUI app. +Every workflow is covered, from opening a process to following multi-level +pointer chains — plus the bundled GUI app, the MCP server for AI assistants, +and the reference for every public symbol. Each group below stands on its own, +so you can start wherever your question is. ```{toctree} -:maxdepth: 2 +:maxdepth: 1 +:caption: Getting Started why installation quickstart -guide/index -app -mcp ``` -## API Reference +```{toctree} +:maxdepth: 1 +:caption: Core Workflow -If you are looking for information on a specific class, method or parameter, -this part of the documentation is for you. +guide/opening-process +guide/read-write +guide/searching +guide/pattern-scan +``` ```{toctree} -:maxdepth: 2 +:maxdepth: 1 +:caption: Inspecting the Process -api/index +guide/memory-regions +guide/modules-threads +``` + +```{toctree} +:maxdepth: 1 +:caption: Pointers + +guide/pointers +guide/pointer-scan +``` + +```{toctree} +:maxdepth: 1 +:caption: Memory Allocation + +guide/allocate-free ``` -## Additional Notes +```{toctree} +:maxdepth: 1 +:caption: Tools -Platform-specific behaviour, troubleshooting, logging, a glossary of the terms -used throughout these docs, plus how to contribute and the project's license. +app +mcp +``` + +```{toctree} +:maxdepth: 2 +:caption: API Reference + +api/index +``` ```{toctree} :maxdepth: 1 +:caption: Additional Notes platform-notes troubleshooting guide/logging +glossary +``` + +```{toctree} +:maxdepth: 1 +:caption: Project + contributing funding license -glossary ``` ## Project links diff --git a/docs/installation.md b/docs/installation.md index 9f275c5..b705b18 100644 --- a/docs/installation.md +++ b/docs/installation.md @@ -18,7 +18,7 @@ any platform. pip install PyMemoryEditor ``` -## Install with the bundled GUI app +## Install with the bundled GUI (`app`) The library ships an optional Cheat Engine-style GUI built on **PySide6 (Qt for Python)**. To install it, use the `app` extra: