Context
The cellpy 2.x docs have a solid skeleton (Getting started → Tutorials →
How-to guides → Concepts → Reference), but they are still written mostly from
the inside out: they describe what cellpy has, rather than answering the
questions a user actually arrives with.
The typical cellpy user is a battery scientist with good electrochemistry
knowledge and limited Python experience. When that person hits trouble —
a file will not load, capacities look wrong, the units are not what they
expected, they do not know which column holds what — there is currently no
page in the docs that meets them there.
Concrete gaps found in a first pass:
- No troubleshooting / FAQ page at all. Nothing indexed by error message
or symptom ("NotImplementedError", "no cycles found", "capacity is zero",
"cannot read .res on Linux").
- No glossary and no units page. Nothing that maps battery-science
vocabulary onto cellpy names, and nothing that states plainly what unit a
mass, capacity, or current is in, or how to change it.
- No CLI reference. The
cellpy command-line tool is used in setup and
checkup pages, but its subcommands are not documented anywhere.
- No task index / cookbook. A user who knows what they want ("plot cycle
life", "export to Excel for Origin", "get areal capacity") has to guess
which tutorial contains it.
- Column-level reference is thin.
fundamentals/data_structure.md
explains the shapes but not what each column means or its unit.
- Discoverability. Several good answers already exist in the docs but are
buried inside long tutorials with no entry point from the navigation.
Goal
Iteratively improve the documentation by repeatedly role-playing a cellpy
user who runs into trouble — mostly the limited-Python / strong-science
persona, but also occasionally a complete newcomer and an experienced
Python developer — and then fixing whatever the docs failed to answer.
Approach
A series of small, focused pull requests. Each iteration:
- Adopt a specific user persona and a specific realistic problem.
- Try to answer it using only the published docs.
- Write or restructure whatever was missing or unfindable.
- Wire the new material into
zensical.toml navigation and cross-link it
from the pages the user would actually be on.
- Green CI (
essential, full, and the Docs link-check build), then merge.
Acceptance criteria
Context
The cellpy 2.x docs have a solid skeleton (Getting started → Tutorials →
How-to guides → Concepts → Reference), but they are still written mostly from
the inside out: they describe what cellpy has, rather than answering the
questions a user actually arrives with.
The typical cellpy user is a battery scientist with good electrochemistry
knowledge and limited Python experience. When that person hits trouble —
a file will not load, capacities look wrong, the units are not what they
expected, they do not know which column holds what — there is currently no
page in the docs that meets them there.
Concrete gaps found in a first pass:
or symptom ("
NotImplementedError", "no cycles found", "capacity is zero","cannot read
.reson Linux").vocabulary onto cellpy names, and nothing that states plainly what unit a
mass, capacity, or current is in, or how to change it.
cellpycommand-line tool is used in setup andcheckup pages, but its subcommands are not documented anywhere.
life", "export to Excel for Origin", "get areal capacity") has to guess
which tutorial contains it.
fundamentals/data_structure.mdexplains the shapes but not what each column means or its unit.
buried inside long tutorials with no entry point from the navigation.
Goal
Iteratively improve the documentation by repeatedly role-playing a cellpy
user who runs into trouble — mostly the limited-Python / strong-science
persona, but also occasionally a complete newcomer and an experienced
Python developer — and then fixing whatever the docs failed to answer.
Approach
A series of small, focused pull requests. Each iteration:
zensical.tomlnavigation and cross-link itfrom the pages the user would actually be on.
essential,full, and theDocslink-check build), then merge.Acceptance criteria
Docsworkflow fails on anybroken link or missing anchor).
zensical.tomlnavigation, not orphaned.snippet and every option name checked against the source or run.
concrete, task-first, minimal jargon, no unexplained Python idioms.