diff --git a/.claude/diataxis.md b/.claude/diataxis.md new file mode 100644 index 00000000..fb8fab1f --- /dev/null +++ b/.claude/diataxis.md @@ -0,0 +1,47 @@ +--- +# The docs manifest the documentation tools read. Generated from the family's manifest +# table: change a key there and regenerate. The two prose lines below may be sharpened. +product: statifier_blocks +family: statifier +audience: Elixir developers building authoring tools over charts +tone: "plain, second person, no marketing" +terminology: + use: + - execution + - chart + - document + - revision + avoid: + - "run (noun)" + - workflow instance +example_world: patron-registration +docs_root: docs +quadrants: + tutorials: docs/tutorials + how_to: docs/guides + reference: docs/reference + explanation: docs/explanation +readme: README.md +reference_generator: ex_doc +publish: hexdocs +contributor_paths: + - docs/adr + - docs/plans + - docs/spikes + - docs/research + - docs/design + - docs/measurements + - CLAUDE.md +executed_snippets: + - test/statifier_blocks/readme_test.exs + - test/statifier_blocks/readme_registration_test.exs + - test/statifier_blocks/readme_runtime_test.exs + - test/statifier_blocks/typing_a_palette_test.exs + - test/statifier_blocks/describing_a_document_guide_test.exs + - test/statifier_blocks/flow_patterns_guide_test.exs + - test/statifier_blocks/assets_test.exs +readme_max_lines: 250 +--- + +A block-based document model that compiles to a chart, with a LiveView editor. +Examples are written in patron registration: a visitor becomes a library patron through a few screens. diff --git a/docs/guides/flow-patterns.md b/docs/guides/flow-patterns.md index 21a46942..9276e608 100644 --- a/docs/guides/flow-patterns.md +++ b/docs/guides/flow-patterns.md @@ -1,4 +1,4 @@ -# Flow patterns +# How to build common flow patterns This guide shows you how to build shapes a workflow commonly needs out of the core block types. Each pattern is a section of its own: the shape, a complete diff --git a/docs/profiles.md b/docs/profiles.md index 583c8d67..92364d35 100644 --- a/docs/profiles.md +++ b/docs/profiles.md @@ -1,4 +1,4 @@ -# Mounting the editor for one audience +# How to mount the editor for one audience This guide shows you how to say which of the editor's surfaces a mount draws, and how to mount it read-only. diff --git a/docs/theming.md b/docs/theming.md index 5a355699..257881ae 100644 --- a/docs/theming.md +++ b/docs/theming.md @@ -1,4 +1,4 @@ -# Theming the editor +# How to theme the editor How to make `StatifierBlocks.Editor` look like your product without forking it. diff --git a/mix.exs b/mix.exs index 13592e19..975ee286 100644 --- a/mix.exs +++ b/mix.exs @@ -68,6 +68,14 @@ defmodule StatifierBlocks.MixProject do "docs/describing-a-document.md", "CHANGELOG.md" ], + # The extras are grouped by the kind of page, in the family's order: + # Tutorials, How-to guides, Reference, Explanation, Upgrading. A group + # appears only when it has a page. The README (the main page) and the + # CHANGELOG stay ungrouped at the top. Decision records and planning + # notes are for contributors and are not extras. + groups_for_extras: [ + "How-to guides": ["docs/describing-a-document.md"] + ], # Without this the first hexdocs is one flat list of ~50 modules, which # tells a reader nothing about which of them they are meant to call. The # groups follow the package's own seams - the document is the source of