|
| 1 | +--- |
| 2 | +title: Types of Documentation |
| 3 | +page-title: Types of Documentation | How to contribute to Vaadin Documentation |
| 4 | +description: Learn about the different types of Vaadin documentation - how-to guides, reference manuals, and deep dives - and understand best practices for writing each type effectively. |
| 5 | +meta-description: Learn about the different types of Vaadin documentation - how-to guides, reference manuals, and deep dives - and understand best practices for writing each type effectively. |
| 6 | +order: 5 |
| 7 | +--- |
| 8 | + |
| 9 | += Types of Documentation |
| 10 | + |
| 11 | +In the Vaadin documentation, you'll find different types of guides and articles. Each serves a distinct purpose, so it's important to avoid mixing different types of content in the same guide to maintain clarity and usability. |
| 12 | + |
| 13 | + |
| 14 | +== How-to Guides |
| 15 | + |
| 16 | +A how-to guide helps the reader *perform a specific task* by offering practical, step-by-step instructions. |
| 17 | + |
| 18 | +When writing a how-to guide: |
| 19 | + |
| 20 | +* *Choose the best approach*: While multiple solutions may exist for a given task, present the one that works best in most scenarios. How-to guides should represent current best practices. |
| 21 | +* *Include just enough theory*: Provide sufficient background information for readers to understand the context, but reserve deeper explanations for deep dives or reference manuals. |
| 22 | +* *Ensure production readiness*: All instructions must be applicable in production environments. If you need to use mocks to keep the article focused, clearly identify these sections and provide resources explaining how to implement real-world solutions. |
| 23 | +* *Maintain appropriate scope*: If a guide becomes too lengthy, split it into smaller, interconnected guides with clear links between them. |
| 24 | +* *Add practical examples*: When possible, include a mini-tutorial at the end that applies the concepts to a <<{articles}/getting-started/start#,Walking Skeleton>> application. These tutorials can span multiple guides, with each building upon the previous one. |
| 25 | + |
| 26 | +Most how-to guides belong in the <<{articles}/building-apps#,Building Apps>> section, but you can place them elsewhere if more appropriate. |
| 27 | + |
| 28 | +[IMPORTANT] |
| 29 | +A new user should be able to become productive with Vaadin by reading the how-to guides alone, without needing to consult other documentation types. |
| 30 | + |
| 31 | + |
| 32 | +== Reference Manuals |
| 33 | + |
| 34 | +A reference manual provides factual explanations of *what features a product has* and *how they work*. How-to guides often build upon reference manuals and refer to them for detailed information. |
| 35 | + |
| 36 | +When writing a reference manual: |
| 37 | + |
| 38 | +* *Maintain neutrality*: Be less opinionated than in how-to guides. Avoid comparing features unless highlighting a deprecated feature and its replacement. |
| 39 | +* *Balance technical depth*: Include as much technical detail as benefits the reader, but consider moving design motivations and reasoning to deep dive articles or blog posts. |
| 40 | +* *Focus on completeness*: Ensure all product features are documented thoroughly and accurately. |
| 41 | + |
| 42 | +Every Vaadin product has its own dedicated reference manual. |
| 43 | + |
| 44 | +[IMPORTANT] |
| 45 | +When updating a reference manual, always review related how-to guides to ensure consistency across documentation. |
| 46 | + |
| 47 | + |
| 48 | +== Deep Dives |
| 49 | + |
| 50 | +Deep dives offer more abstract and comprehensive content than how-to guides and reference manuals. They are the *most opinionated* yet *least prescriptive* type of documentation. |
| 51 | + |
| 52 | +Deep dives can: |
| 53 | + |
| 54 | +* Explore reasoning behind design decisions or best practices |
| 55 | +* Offer insights, opinions, and alternative approaches |
| 56 | +* Provide architectural guidance and design philosophy |
| 57 | +* Discuss trade-offs and considerations when making complex decisions |
| 58 | + |
| 59 | +Consider deep dives as thought-provoking content rather than explicit instructions. They should enhance understanding but shouldn't be required reading for getting started with Vaadin. |
| 60 | + |
| 61 | +Deep dives need not directly relate to Vaadin products, but should align with Vaadin's mission of making Java-based application development and modernization faster and easier. |
| 62 | + |
| 63 | +Most deep dives appear in the <<{articles}/building-apps/deep-dives#,Building Apps>> section, but product-specific deep dives can be placed within their respective product documentation. |
0 commit comments