Skip to content

docs: reorganise into categorised folders + real docs index + link audit#51

Merged
DemchaAV merged 1 commit into
developfrom
feature/docs-reorg-and-audit
May 24, 2026
Merged

docs: reorganise into categorised folders + real docs index + link audit#51
DemchaAV merged 1 commit into
developfrom
feature/docs-reorg-and-audit

Conversation

@DemchaAV
Copy link
Copy Markdown
Owner

Summary

Acts on the documentation audit findings: reorganises docs/ from
21 flat files into 6 categorised folders, replaces the misleading
docs/README.md (which was about GitHub Pages) with a real
documentation index, kills the v1/v2 terminology confusion via
explicit callouts, and fixes every broken link the reshuffle
created.

⚠️ Stacked on #47 / #48 / #49 / #50. After all merge, this PR's
diff shrinks to just the docs reorg.

Before / After

Beforedocs/ was a flat dump:

docs/
├── README.md            ← about GitHub Pages, not docs (misleading)
├── architecture.md      ← mixed
├── benchmarks.md        ← mixed
├── canonical-legacy-parity.md
├── extension-guide.md
├── getting-started.md
├── implementation-guide.md
├── lifecycle.md
├── logging.md
├── ...                  ← 21 files, no categorisation
├── adr/                 ← organised
├── recipes/             ← organised
└── archive/             ← organised

Afterdocs/ grouped by purpose:

docs/
├── README.md            ← NEW real docs landing (persona + category maps)
├── SHOWCASE.md          ← renamed from docs/README.md (GH Pages doc)
├── getting-started.md   ← kept flat (high-traffic)
├── recipes.md           ← kept flat (recipes index)
├── adr/                 ← unchanged
├── archive/             ← unchanged
├── recipes/             ← unchanged
├── architecture/        ← 5 files
├── operations/          ← 5 files
├── contributing/        ← 3 files
├── roadmaps/            ← 3 files
└── templates/           ← 2 sub-trees
    ├── v1-classic/      ← was templates-v2.md + template-authoring.md
    └── v2-layered/      ← was templates-layered/

Key changes

  1. docs/README.md is now a real docs index — categorised
    landing with persona map, category map, ADR list, recipe list,
    and quick links. The previous docs/README.md (about the
    GitHub Pages showcase) is renamed to docs/SHOWCASE.md.

  2. 20 files moved via git mv so history is preserved. Sed
    sweep across 58 .md files updated every absolute docs/X.md
    reference. Internal relative links (e.g. ./lifecycle.md inside
    the moved architecture/overview.md) fixed by hand for every
    affected file.

  3. v1/v2 terminology confusion killed with explicit
    > ⚠️ Naming clarification callouts at the top of:

    • templates/v1-classic/README.md
    • templates/v1-classic/authoring.md
    • templates/v2-layered/README.md

    Both surfaces explained as coexisting, neither deprecated, with
    bidirectional cross-links so a reader who lands on one knows
    the other exists.

  4. CONTRIBUTING.md "New built-in template" section now opens
    with a fork: NEW family → layered architecture
    (docs/templates/v2-layered/contributor-guide.md); NEW preset
    inside existing family → v1-classic pattern. Plus a "📚 Map of
    template docs" pointer to docs/README.md.

  5. Orphans resolved. docs/performance.md (previously
    nowhere-linked) is now in operations/ and indexed.
    docs/recipes/shapes.md was only linked via recipes.md, which
    is now linked from root README, so discoverable.

  6. ADR numbering gap (0005-0010 missing) explained as a note
    in docs/README.md — those numbers were reserved during a v1.5
    restructure that landed under ADR 0011 instead.

  7. Root README.md documentation section restructured:
    "📚 Full docs index" pointer at the top, then categorised
    sub-groups (Templates / Architecture & operations / Recipes &
    examples / Contributing & releases).

Tech accuracy spot-check

Sampled 4 high-traffic docs against the current code:

  • getting-started.md — every referenced class
    (DocumentSession, BusinessTheme, etc.) exists in src/
  • templates/v1-classic/authoring.md — every layout class
    (SingleColumn, TwoColumnSidebar, ThreeColumnMagazine, etc.)
    exists
  • templates/v1-classic/README.md — accurate
  • contributing/extension-guide.md — accurate

No stale class references found.

What's NOT changed

  • No engine / source / test edits. Pure documentation PR.
  • No content rewrites of existing docs (only callouts +
    relocation + link fixes).
  • No v1 surface deprecation. Both template surfaces explained
    as coexisting.

Test plan

  • All MD links validated via automated sweep — zero broken
  • mvn javadoc:javadoc clean (no doc-level errors)
  • git mv used everywhere so history preserved
  • Visual scan of new docs/README.md index for completeness
  • CI green

DemchaAV added a commit that referenced this pull request May 24, 2026
…h audit

Phase 3 of the documentation work after audit (#50 added the
templates-layered/ guide; #51 here restructures the entire docs/
tree and fixes terminology + link hygiene).

Reorg — docs/ structure
-----------------------

Was: 21 flat .md files in docs/ with no obvious category. Now
grouped by purpose, mirroring the personas:

  docs/
  ├── README.md                            ← NEW real docs index
  ├── SHOWCASE.md                          ← renamed from docs/README.md
  │                                          (GitHub Pages showcase doc)
  ├── getting-started.md                   ← kept flat (high traffic)
  ├── recipes.md                           ← kept flat (recipes index)
  ├── adr/                                 ← unchanged (8 ADRs)
  ├── archive/                             ← unchanged (3 archived docs)
  ├── recipes/                             ← unchanged (7 recipes)
  ├── architecture/                        ← NEW (5 files moved)
  │   ├── overview.md                      ← was architecture.md
  │   ├── lifecycle.md
  │   ├── pagination-ordering.md
  │   ├── canonical-legacy-parity.md
  │   └── package-map.md
  ├── operations/                          ← NEW (5 files moved)
  │   ├── benchmarks.md
  │   ├── logging.md
  │   ├── performance.md
  │   ├── production-rendering.md
  │   └── layout-snapshot-testing.md
  ├── contributing/                        ← NEW (3 files moved)
  │   ├── extension-guide.md
  │   ├── implementation-guide.md
  │   └── release-process.md
  ├── roadmaps/                            ← NEW (3 files moved)
  │   ├── v1.6-roadmap.md
  │   ├── migration-v1-4-to-v1-5.md
  │   └── migration-v1-5-to-v1-6.md
  └── templates/                           ← NEW (groups both surfaces)
      ├── v1-classic/                      ← was docs/templates-v2.md + template-authoring.md
      │   ├── README.md                    ← v1.6 "Templates v2" landing
      │   └── authoring.md                 ← was template-authoring.md
      └── v2-layered/                      ← was docs/templates-layered/
          ├── README.md
          ├── quickstart.md
          ├── using-templates.md
          ├── authoring-presets.md
          └── contributor-guide.md

20 files moved via `git mv` so the history is preserved.

Documentation index — docs/README.md
------------------------------------

The old docs/README.md was about the GitHub Pages showcase site,
not a docs index — opening docs/ on GitHub showed the wrong thing.

  - Renamed old docs/README.md → docs/SHOWCASE.md
  - Wrote new docs/README.md as the canonical docs landing:
    persona map + category map + ADR list + recipe list + quick
    links.

v1/v2 terminology — explicit callouts
-------------------------------------

The codebase has TWO surfaces both casually called "v2":
  - The v1.6 rebuilt templates (CvSpec / CvBuilder / *Presets)
    which the project calls "Templates v2" internally (ADR-0011).
  - The newer layered cv/v2/ architecture introduced in PRs
    #45-#49.

Added clarifying callouts at the top of:
  - docs/templates/v1-classic/README.md  — "this is the v1.6
    surface; for the newer layered pattern see v2-layered/"
  - docs/templates/v1-classic/authoring.md — same callout
  - docs/templates/v2-layered/README.md   — "this is the layered
    architecture; NOT the older v1.6 'Templates v2'"

Both surfaces are still shipped and supported; neither is
deprecated. The callouts just kill the confusion.

CONTRIBUTING.md update
----------------------

The "New built-in template" section now opens with a fork:
  - For a NEW template family from scratch → layered architecture
    (with link to contributor-guide.md)
  - For a new preset inside an existing v1-classic family → keep
    using BusinessTheme + CvBuilder + the existing presets pattern

Plus a "📚 Map of template docs" pointer to docs/README.md so
contributors don't have to guess.

Orphan resolution
-----------------

  - docs/performance.md was nowhere-linked. Moved to operations/
    and indexed from docs/README.md.
  - docs/recipes/shapes.md was nowhere-linked-from-root-README but
    IS linked from recipes.md (the recipe index). Root README now
    links recipes.md so it's discoverable.
  - ADR numbering gap (0005-0010 missing) explained inline in
    docs/README.md as a note next to the ADR list.

Link integrity
--------------

  - sed sweep across 58 .md files updated every absolute
    `docs/X.md` reference to its new categorised path.
  - Internal relative links inside moved files (e.g. `./benchmarks.md`
    from within docs/architecture/) updated by hand for every
    affected file.
  - Final automated sweep verifies **zero broken markdown links**
    repo-wide.

Tech accuracy spot-check
------------------------

Sampled 4 high-traffic docs against the current code:
  - getting-started.md — every referenced class (DocumentSession,
    BusinessTheme, etc.) exists in src/.
  - templates/v1-classic/authoring.md — every layout class
    (SingleColumn, TwoColumnSidebar, ThreeColumnMagazine, etc.)
    exists.
  - templates/v1-classic/README.md — accurate.
  - contributing/extension-guide.md — accurate.

No stale class references found.

Root README update
------------------

Documentation section reorganised:
  - New "📚 Full docs index" link to docs/README.md.
  - Templates split into v2-layered (new) and v1-classic (legacy
    but shipped) with cross-link to authoring guides.
  - Sub-grouped: Templates / Architecture & operations / Recipes
    & examples / Contributing & releases.

No engine, source, or test changes. Pure documentation.
@DemchaAV DemchaAV force-pushed the feature/docs-reorg-and-audit branch from 97133d0 to 95c00e8 Compare May 24, 2026 13:41
…h audit

Phase 3 of the documentation work after audit (#50 added the
templates-layered/ guide; #51 here restructures the entire docs/
tree and fixes terminology + link hygiene).

Reorg — docs/ structure
-----------------------

Was: 21 flat .md files in docs/ with no obvious category. Now
grouped by purpose, mirroring the personas:

  docs/
  ├── README.md                            ← NEW real docs index
  ├── SHOWCASE.md                          ← renamed from docs/README.md
  │                                          (GitHub Pages showcase doc)
  ├── getting-started.md                   ← kept flat (high traffic)
  ├── recipes.md                           ← kept flat (recipes index)
  ├── adr/                                 ← unchanged (8 ADRs)
  ├── archive/                             ← unchanged (3 archived docs)
  ├── recipes/                             ← unchanged (7 recipes)
  ├── architecture/                        ← NEW (5 files moved)
  │   ├── overview.md                      ← was architecture.md
  │   ├── lifecycle.md
  │   ├── pagination-ordering.md
  │   ├── canonical-legacy-parity.md
  │   └── package-map.md
  ├── operations/                          ← NEW (5 files moved)
  │   ├── benchmarks.md
  │   ├── logging.md
  │   ├── performance.md
  │   ├── production-rendering.md
  │   └── layout-snapshot-testing.md
  ├── contributing/                        ← NEW (3 files moved)
  │   ├── extension-guide.md
  │   ├── implementation-guide.md
  │   └── release-process.md
  ├── roadmaps/                            ← NEW (3 files moved)
  │   ├── v1.6-roadmap.md
  │   ├── migration-v1-4-to-v1-5.md
  │   └── migration-v1-5-to-v1-6.md
  └── templates/                           ← NEW (groups both surfaces)
      ├── v1-classic/                      ← was docs/templates-v2.md + template-authoring.md
      │   ├── README.md                    ← v1.6 "Templates v2" landing
      │   └── authoring.md                 ← was template-authoring.md
      └── v2-layered/                      ← was docs/templates-layered/
          ├── README.md
          ├── quickstart.md
          ├── using-templates.md
          ├── authoring-presets.md
          └── contributor-guide.md

20 files moved via `git mv` so the history is preserved.

Documentation index — docs/README.md
------------------------------------

The old docs/README.md was about the GitHub Pages showcase site,
not a docs index — opening docs/ on GitHub showed the wrong thing.

  - Renamed old docs/README.md → docs/SHOWCASE.md
  - Wrote new docs/README.md as the canonical docs landing:
    persona map + category map + ADR list + recipe list + quick
    links.

v1/v2 terminology — explicit callouts
-------------------------------------

The codebase has TWO surfaces both casually called "v2":
  - The v1.6 rebuilt templates (CvSpec / CvBuilder / *Presets)
    which the project calls "Templates v2" internally (ADR-0011).
  - The newer layered cv/v2/ architecture introduced in PRs
    #45-#49.

Added clarifying callouts at the top of:
  - docs/templates/v1-classic/README.md  — "this is the v1.6
    surface; for the newer layered pattern see v2-layered/"
  - docs/templates/v1-classic/authoring.md — same callout
  - docs/templates/v2-layered/README.md   — "this is the layered
    architecture; NOT the older v1.6 'Templates v2'"

Both surfaces are still shipped and supported; neither is
deprecated. The callouts just kill the confusion.

CONTRIBUTING.md update
----------------------

The "New built-in template" section now opens with a fork:
  - For a NEW template family from scratch → layered architecture
    (with link to contributor-guide.md)
  - For a new preset inside an existing v1-classic family → keep
    using BusinessTheme + CvBuilder + the existing presets pattern

Plus a "📚 Map of template docs" pointer to docs/README.md so
contributors don't have to guess.

Orphan resolution
-----------------

  - docs/performance.md was nowhere-linked. Moved to operations/
    and indexed from docs/README.md.
  - docs/recipes/shapes.md was nowhere-linked-from-root-README but
    IS linked from recipes.md (the recipe index). Root README now
    links recipes.md so it's discoverable.
  - ADR numbering gap (0005-0010 missing) explained inline in
    docs/README.md as a note next to the ADR list.

Link integrity
--------------

  - sed sweep across 58 .md files updated every absolute
    `docs/X.md` reference to its new categorised path.
  - Internal relative links inside moved files (e.g. `./benchmarks.md`
    from within docs/architecture/) updated by hand for every
    affected file.
  - Final automated sweep verifies **zero broken markdown links**
    repo-wide.

Tech accuracy spot-check
------------------------

Sampled 4 high-traffic docs against the current code:
  - getting-started.md — every referenced class (DocumentSession,
    BusinessTheme, etc.) exists in src/.
  - templates/v1-classic/authoring.md — every layout class
    (SingleColumn, TwoColumnSidebar, ThreeColumnMagazine, etc.)
    exists.
  - templates/v1-classic/README.md — accurate.
  - contributing/extension-guide.md — accurate.

No stale class references found.

Root README update
------------------

Documentation section reorganised:
  - New "📚 Full docs index" link to docs/README.md.
  - Templates split into v2-layered (new) and v1-classic (legacy
    but shipped) with cross-link to authoring guides.
  - Sub-grouped: Templates / Architecture & operations / Recipes
    & examples / Contributing & releases.

No engine, source, or test changes. Pure documentation.
@DemchaAV DemchaAV force-pushed the feature/docs-reorg-and-audit branch from 95c00e8 to 782a5fa Compare May 24, 2026 14:03
@DemchaAV DemchaAV merged commit 19ad7f8 into develop May 24, 2026
8 checks passed
@DemchaAV DemchaAV deleted the feature/docs-reorg-and-audit branch May 24, 2026 14:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants