Skip to content

docs: Split documentation into template author and developer sections - #21

Merged
vaceslav merged 4 commits into
mainfrom
docs/fix-broken-links-after-split
Nov 21, 2025
Merged

docs: Split documentation into template author and developer sections#21
vaceslav merged 4 commits into
mainfrom
docs/fix-broken-links-after-split

Conversation

@vaceslav

Copy link
Copy Markdown
Contributor

Summary

Comprehensive documentation reorganization that splits content into two clear audiences:

  • Template Authors - Non-technical users creating Word templates (JSON only, no C# code)
  • Developers - Technical users integrating the library (C# API, examples, architecture)

This improves accessibility for non-developers while maintaining comprehensive technical documentation.


Changes

📝 New Template Author Documentation (docs/for-template-authors/)

Created 9 comprehensive guides (25,000+ words) with zero C# code, JSON-only examples:

  1. getting-started.md - 5-minute intro with Word + JSON workflow
  2. json-basics.md - Beginner-friendly JSON tutorial (types, syntax, common mistakes)
  3. template-syntax.md - Complete syntax reference (placeholders, conditionals, loops, operators)
  4. placeholders.md - Deep dive into placeholder usage (simple, nested, arrays, dictionaries)
  5. conditionals.md - If/else logic with all operators and real-world examples
  6. loops.md - Foreach loops, table rows, nested loops, loop variables
  7. best-practices.md - Naming conventions, testing, troubleshooting, maintenance tips
  8. examples-gallery.md - Visual gallery linking to downloadable templates
  9. format-specifiers.md - Moved from docs/guides/
  10. boolean-expressions.md - Moved from docs/guides/

💻 New Developer Documentation (docs/for-developers/)

  • quick-start.md - Placeholder stub linking to existing technical docs
  • Full developer docs to be added later (tracked separately)

🏠 Updated Landing Page (docs/index.md)

  • Added prominent audience selector at the top
  • Two clear paths: "📝 I Create Word Templates" vs "💻 I'm a Developer"
  • Removed C# code from main example (switched to JSON)
  • Simplified structure for better UX
  • Updated support links

🗺️ Updated Navigation (mkdocs.yml)

  • New "For Template Authors" section with all 10 guides
  • New "For Developers" section (placeholder)
  • Kept existing Tutorials and FAQ sections
  • Marked old Quick Start as "Legacy"

🔗 Fixed Broken Links

Fixed 6 internal links pointing to old file locations:

  • docs/FAQ.md - 2 links updated
  • docs/quick-start.md - 2 links updated
  • docs/tutorials/index.md - 2 links updated

📦 Additional Files

  • examples/README.md - Instructions for using downloadable example templates

Why This Matters

Before

  • Template authors had to wade through C# code and Dictionary<string, object> examples
  • No beginner-friendly JSON documentation
  • Mixed audience created confusion

After

  • ✅ Template authors never see C# code
  • ✅ All template author examples use JSON only
  • ✅ Beginner-friendly JSON basics explained from scratch
  • ✅ Clear separation of concerns for different user types
  • 25,000+ words of template-author-focused content

Testing

  • MkDocs builds successfully (mkdocs serve)
  • All internal links work (broken links fixed)
  • Navigation structure is clear and logical
  • No C# code in template author section
  • Documentation renders correctly in Material theme

Live Preview: http://127.0.0.1:8001/templify/ (local)


Related Issues

Partially addresses #20 - This PR implements the main documentation split and fixes all broken links. Remaining optional cleanup items (missing tutorial files, legacy directory removal) are tracked in #20.


Checklist

  • Documentation follows beginner-friendly style for template authors
  • No C# code in template author sections
  • All examples use JSON format
  • Internal links updated to new paths
  • MkDocs navigation updated
  • Landing page includes audience selector
  • Commit message is descriptive

Screenshots

New Landing Page with Audience Selector

(View at http://127.0.0.1:8001/templify/)

Template Author Documentation Structure

  • 10 comprehensive guides
  • JSON-only examples
  • No C# code

File Changes

17 files changed:

  • 4,989 insertions (+)
  • 66 deletions (-)

New files: 10 template author guides, 1 developer placeholder, 1 examples README
Modified files: Landing page, navigation, 3 files with fixed links
Moved files: 2 guides (format-specifiers, boolean-expressions)

Configure .editorconfig to enforce code style as warnings:
- IDE0011: Require braces for all if statements
- IDE0040: Require explicit accessibility modifiers
- IDE1006: Enforce naming conventions (private fields with _ prefix)

Apply formatting fixes across codebase:
- Fix line endings (CRLF→LF) in GUI project files
- Add braces to single-line if statements
- Add accessibility modifiers where missing
- Format code according to all .editorconfig rules

Changes applied via dotnet format. All 690 tests passing.
Build now completes with zero warnings.
Split documentation into two clear audiences to improve accessibility:
- Template Authors: Non-technical users creating Word templates (JSON only, no C# code)
- Developers: Technical users integrating the library (C# API, examples, architecture)

## Changes

### New Template Author Documentation (docs/for-template-authors/)
- getting-started.md - 5-minute intro with JSON examples
- json-basics.md - Beginner-friendly JSON tutorial
- template-syntax.md - Complete syntax reference
- placeholders.md - Placeholder usage guide
- conditionals.md - If/else logic guide
- loops.md - Foreach loops guide
- best-practices.md - Tips and troubleshooting
- examples-gallery.md - Visual examples gallery
- Moved format-specifiers.md from guides/
- Moved boolean-expressions.md from guides/

### New Developer Documentation (docs/for-developers/)
- quick-start.md - Placeholder linking to existing dev docs

### Updated Landing Page (docs/index.md)
- Added audience selector at top
- Clear paths: "I Create Word Templates" vs "I'm a Developer"
- Removed C# code from main example (switched to JSON)
- Simplified structure for better UX

### Updated Navigation (mkdocs.yml)
- New "For Template Authors" section with all guides
- New "For Developers" section (placeholder)
- Kept existing Tutorials and FAQ
- Marked old Quick Start as "Legacy"

### Fixed Broken Links
- docs/FAQ.md: 2 links updated to new paths
- docs/quick-start.md: 2 links updated to new paths
- docs/tutorials/index.md: 2 links updated to new paths

### Additional Files
- examples/README.md - Instructions for downloadable examples

## Impact

- Template authors never see C# code or Dictionary<string, object>
- All template author examples use JSON only
- Beginner-friendly JSON basics explained from scratch
- Clear separation of concerns for different user types

## Related

Remaining cleanup tracked in #20

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR reorganizes documentation to separate content for two distinct audiences: template authors (non-technical users working with Word and JSON) and developers (integrating the C# library). The changes include 10 comprehensive template author guides (~25,000 words) with JSON-only examples, updated navigation, a revised landing page with audience selector, and fixes for broken internal links.

Reviewed changes

Copilot reviewed 15 out of 17 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
mkdocs.yml Updated navigation to add "For Template Authors" (10 guides) and "For Developers" sections, moved old Quick Start to legacy
docs/index.md Added audience selector with clear paths for template authors vs developers, switched main example from C# to JSON
docs/for-template-authors/*.md 10 new comprehensive guides covering JSON basics, syntax, placeholders, conditionals, loops, format specifiers, boolean expressions, best practices, examples gallery, and getting started
docs/for-developers/quick-start.md Placeholder stub linking to existing technical documentation
docs/FAQ.md Fixed 2 broken links to format-specifiers and boolean-expressions guides
docs/quick-start.md Fixed 2 broken links to moved guides
docs/tutorials/index.md Fixed 2 broken links referencing old guides directory
examples/README.md New file with instructions for using downloadable example templates

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +173 to +175
"Years

Experience": 5,

Copilot AI Nov 21, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Invalid JSON: The key name \"Years\n\nExperience\" is split across multiple lines. This should be \"YearsExperience\" to match the template usage on line 183 and to be valid JSON.

Suggested change
"Years
Experience": 5,
"YearsExperience": 5,

Copilot uses AI. Check for mistakes.
Fixed multi-line key name 'Years\n\nExperience' to 'YearsExperience' to match template placeholder and create valid JSON.

Addresses Copilot review comment on PR #21.
@vaceslav

Copy link
Copy Markdown
Contributor Author

✅ Fixed! Changed the multi-line JSON key to "YearsExperience" to match the template placeholder and create valid JSON. Thanks for catching this!

@vaceslav
vaceslav merged commit 433f0d4 into main Nov 21, 2025
11 checks passed
@vaceslav
vaceslav deleted the docs/fix-broken-links-after-split branch November 21, 2025 22:21
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