mirror of
https://github.com/macaodha/batdetect2.git
synced 2026-04-04 15:20:19 +02:00
136 lines
5.9 KiB
Markdown
136 lines
5.9 KiB
Markdown
# Documentation Architecture and Migration Plan (Phase 0)
|
|
|
|
This page defines the Phase 0 documentation architecture and inventory for
|
|
reorganizing `batdetect2` documentation using the Diataxis framework.
|
|
|
|
## Scope and goals
|
|
|
|
Phase 0 focuses on architecture and prioritization only. It does not attempt
|
|
to write all new docs yet.
|
|
|
|
Primary goals:
|
|
|
|
1. Define a target docs architecture by Diataxis type.
|
|
2. Map current pages to target documentation types.
|
|
3. Identify what to keep, split, rewrite, or deprecate.
|
|
4. Set priorities for implementation phases.
|
|
|
|
## Audiences
|
|
|
|
Two primary audiences are in scope.
|
|
|
|
1. Ecologists who prefer minimal coding, focused on practical workflows:
|
|
run inference, inspect outputs, and possibly train with custom data.
|
|
2. Ecologists or bioacousticians who are Python-savvy and want to customize
|
|
workflows, training, and analysis.
|
|
|
|
## Target information architecture
|
|
|
|
The target architecture uses four top-level documentation sections.
|
|
|
|
1. Tutorials
|
|
- Learning-oriented, single-path, reproducible walkthroughs.
|
|
2. How-to guides
|
|
- Task-oriented procedures for common real goals.
|
|
3. Reference
|
|
- Factual descriptions of CLI, configs, APIs, and formats.
|
|
4. Explanation
|
|
- Conceptual material that explains why design and workflow decisions
|
|
matter.
|
|
|
|
Cross-cutting navigation conventions:
|
|
|
|
- Every page starts with audience, prerequisites, and outcome.
|
|
- Every page serves one Diataxis type only.
|
|
- Beginner-first path is prioritized, with clear links to advanced pages.
|
|
|
|
## Phase 0 inventory: current docs mapped to Diataxis
|
|
|
|
Legend:
|
|
|
|
- Keep: useful as-is with minor edits.
|
|
- Split: contains mixed documentation types and should be separated.
|
|
- Rewrite: major changes needed to fit target audience/type.
|
|
- Move: content is valid but belongs under another section.
|
|
|
|
| Current page | Current role | Target type | Audience | Action | Priority |
|
|
| --- | --- | --- | --- | --- | --- |
|
|
| `README.md` | Mixed quickstart + CLI + API + warning | Tutorial + How-to + Explanation (split) | 1 + 2 | Split | P0 |
|
|
| `docs/source/index.md` | Sparse landing page | Navigation hub | 1 + 2 | Rewrite | P0 |
|
|
| `docs/source/architecture.md` | Internal architecture deep dive | Explanation + developer reference | 2 | Move/trim | P2 |
|
|
| `docs/source/postprocessing.md` | Concept + config + internals + usage | Explanation + How-to + Reference (split) | 1 + 2 | Split | P1 |
|
|
| `docs/source/preprocessing/index.md` | Conceptual overview with some procedural flow | Explanation | 2 (and 1 optional) | Keep/trim | P2 |
|
|
| `docs/source/preprocessing/audio.md` | Detailed configuration and behavior | Reference + How-to fragments | 2 | Split | P2 |
|
|
| `docs/source/preprocessing/spectrogram.md` | Detailed configuration and behavior | Reference + How-to fragments | 2 | Split | P2 |
|
|
| `docs/source/preprocessing/usage.md` | Usage patterns + concept | How-to + Explanation (split) | 2 | Split | P1 |
|
|
| `docs/source/data/index.md` | Data-loading section index | Reference index | 2 | Keep/update | P2 |
|
|
| `docs/source/data/aoef.md` | Config and examples | How-to + Reference (split) | 2 | Split | P1 |
|
|
| `docs/source/data/legacy.md` | Legacy formats and config | How-to + Reference (split) | 2 | Split | P2 |
|
|
| `docs/source/targets/index.md` | Long conceptual + process overview | Explanation + How-to (split) | 2 | Split | P2 |
|
|
| `docs/source/targets/tags_and_terms.md` | Definitions + guidance | Explanation + Reference | 2 | Split | P2 |
|
|
| `docs/source/targets/filtering.md` | Procedure + config | How-to + Reference | 2 | Split | P2 |
|
|
| `docs/source/targets/transform.md` | Procedure + config | How-to + Reference | 2 | Split | P2 |
|
|
| `docs/source/targets/classes.md` | Procedure + config | How-to + Reference | 2 | Split | P2 |
|
|
| `docs/source/targets/rois.md` | Concept + mapping details | Explanation + Reference | 2 | Split | P2 |
|
|
| `docs/source/targets/use.md` | Integration overview | Explanation | 2 | Keep/trim | P2 |
|
|
| `docs/source/reference/index.md` | Small reference root | Reference | 2 | Expand | P1 |
|
|
| `docs/source/reference/configs.md` | Autodoc for configs | Reference | 2 | Keep | P1 |
|
|
| `docs/source/reference/targets.md` | Autodoc for targets | Reference | 2 | Keep | P2 |
|
|
|
|
## CLI and API documentation gaps (from code surface)
|
|
|
|
Current command surface includes:
|
|
|
|
- `batdetect2 detect` (compat command)
|
|
- `batdetect2 predict directory`
|
|
- `batdetect2 predict file_list`
|
|
- `batdetect2 predict dataset`
|
|
- `batdetect2 train`
|
|
- `batdetect2 evaluate`
|
|
- `batdetect2 data summary`
|
|
- `batdetect2 data convert`
|
|
|
|
These commands are not yet represented as a coherent user-facing task set.
|
|
|
|
Priority gap actions:
|
|
|
|
1. Add CLI reference pages for command signatures and options.
|
|
2. Add beginner how-to pages for practical command recipes.
|
|
3. Add migration guidance from `detect` to `predict` workflows.
|
|
|
|
## Priority architecture for implementation phases
|
|
|
|
### P0 (this phase): architecture and inventory
|
|
|
|
- Done in this file.
|
|
- Define structure and classify existing material.
|
|
|
|
### P1: user-critical docs for running the model
|
|
|
|
1. Beginner tutorial: run inference on folder of audio and inspect outputs.
|
|
2. How-to guides for repeatable inference tasks and threshold tuning.
|
|
3. Reference: complete CLI docs for prediction and outputs.
|
|
4. Explanation: interpretation caveats and validation guidance.
|
|
|
|
### P2: advanced customization and training
|
|
|
|
1. How-to guides for custom dataset preparation and training.
|
|
2. Reference for data formats, targets, and preprocessing configs.
|
|
3. Explanation docs for target design and pipeline trade-offs.
|
|
|
|
### P3: polish and contributor consistency
|
|
|
|
1. Tight cross-linking across Diataxis boundaries.
|
|
2. Consistent page templates and terminology.
|
|
3. Reader testing with representative users from both audiences.
|
|
|
|
## Definition of done for Phase 0
|
|
|
|
Phase 0 is complete when:
|
|
|
|
1. The target architecture is defined.
|
|
2. Existing content is inventoried and classified.
|
|
3. Prioritized migration path is agreed.
|
|
|
|
This page satisfies these criteria and is the baseline for Phase 1 work.
|