Skip to content

Commit 950f7b3

Browse files
inventarSarahcoolguyzonechargome
authored
Create "How to write – Quick Start" page (#12945)
* create how to write quick start page * fix broken link * Apply suggestions from code review Co-authored-by: Alex Krawiec <[email protected]> * feedback, update link * Apply suggestions from code review Co-authored-by: Charly Gomez <[email protected]> * link to next.js wizard --------- Co-authored-by: Alex Krawiec <[email protected]> Co-authored-by: Charly Gomez <[email protected]>
1 parent b49ba49 commit 950f7b3

File tree

3 files changed

+170
-3
lines changed

3 files changed

+170
-3
lines changed

docs/contributing/approach/sdk-docs/index.mdx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,15 @@ Our structure for SDK content focuses on getting a user up and running quickly,
1010

1111
SDKs provide content that focus on 10 sections (two of which are auto-generated) that rely on common content. Each section is explained in detail on its own page. A quick overview:
1212

13-
1. **Getting Started**
13+
1. **Quick Start / Getting Started (legacy)**
1414

1515
A single, critical page.
1616

17-
**[How to Write - Getting Started](/contributing/approach/write-getting-started)**
17+
For new SDKs and updated guides, use:
18+
**[How to Write - Quick Start](/contributing/approach/sdk-docs/write-quick-start/)**
19+
20+
To update existing Getting Started guides, use:
21+
**[How to Write - Getting Started](/contributing/approach/write-getting-started)**
1822

1923
This content is used in two different areas for Sentry customers:
2024

docs/contributing/approach/sdk-docs/write-getting-started.mdx

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,12 @@ noindex: true
44
sidebar_order: 30
55
---
66

7+
<Alert type="info">
8+
This page describes the legacy "Getting Started" guide format. New SDKs and
9+
guides that have been updated should use the [Quick Start guide
10+
format](/contributing/approach/sdk-docs/write-quick-start/).
11+
</Alert>
12+
713
A new platform/SDK should base it's Getting Started page of off a similar existing SDK page.
814

915
Here's an overview of the general components of a Getting Started page.
@@ -68,7 +74,6 @@ Add the verification code sample to this directory:
6874

6975
- [`/src/platform-includes/getting-started-verify/`](https://github.com/getsentry/sentry-docs/tree/master/platform-includes/getting-started-verify)
7076

71-
7277
## But, that's not all
7378

7479
The Getting Started content is also used by our in-app onboarding wizard to get customers up and running with Sentry. Keeping all content up to date is critical.
Lines changed: 158 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,158 @@
1+
---
2+
title: How to Write - Quick Start
3+
noindex: true
4+
sidebar_order: 25
5+
---
6+
7+
New SDKs should use the Quick Start guide format outlined on this page. You may still encounter Getting Started guides for existing SDKs.
8+
9+
<Alert type="info" title="Note">
10+
If you want to update an existing Getting Started Guide without refactoring it
11+
into a Quick Start guide, see [How to Write - Getting
12+
Started](/contributing/approach/sdk-docs/write-getting-started/). If you're
13+
unsure what kind of guide you're looking at, ask a question by [opening an
14+
issue in GitHub](https://github.com/getsentry/sentry-docs/issues/new/choose).
15+
</Alert>
16+
17+
<Expandable type="info" title="Why the change?">
18+
This change stems from our commitment to following best practices and making our docs as accessible as possible.
19+
20+
With the new Quick Start guides, we want to provide a more structured and focused approach, helping writers create valuable content with confidence, ultimately assisting users in reaching their goals with Sentry.
21+
22+
**Quick Start vs. Getting Started:**
23+
| | Quick Start | Getting Started |
24+
| -------- | ----------------------------------------------------------------------------------- | --------------------------------------------------------------------- |
25+
| **Focus** | Goal-oriented, immediate action, minimal steps | Learning-oriented, broader concepts, background information |
26+
| **Content** | Highlights critical steps with less focus on the how and why | More explanatory and provides background information |
27+
| **Audience** | Developers who want to get started quickly | Developers seeking a deeper understanding |
28+
| **Format** | Single page; Concise | Often spans multiple pages; Comprehensive |
29+
30+
</Expandable>
31+
32+
Our Quick Start guides aim to:
33+
34+
- Enable developers to quickly onboard Sentry with features such as Error Monitoring, Tracing, and Session Replay
35+
- Keep instructions concise by avoiding unnecessary explanations or background information
36+
- Focus on action by including code examples and commands
37+
- Achieve a functional Sentry setup with visible results in a user's Sentry project
38+
- Serve as the basis for further customization
39+
40+
## Structuring the config.yml File
41+
42+
The config.yml file provides SDK-level details, such as its title, support level, and device categories. This file resides in the `/docs/platform/<SDK_name>/` directory. An example:
43+
44+
```yaml
45+
title: JavaScript
46+
caseStyle: camelCase
47+
supportLevel: production
48+
sdk: "sentry.javascript.browser"
49+
categories:
50+
- browser
51+
```
52+
53+
## Structure Templates
54+
55+
We've created two Quick Start guide templates: one for wizard setup and one for manual setup. Use them as a basis and add new sections (steps) as you see fit.
56+
57+
If an SDK has both Quick Start guides, make sure that both guides reach the same outcome, meaning the modifications in the developer's project should be consistent (within reason).
58+
59+
### Wizard Setup
60+
61+
The wizard is the fastest way to set up Sentry – your guide should reflect this by relying on the wizard for the core setup while providing additional information when it makes sense and helps the developer. You can wrap these additions into `Expandable` components to hide them by default and de-clutter your page visually.
62+
63+
We recommend you base your guide on a similar existing SDK page, such as:
64+
65+
- [Next.js quick start guide wizard setup](/platforms/javascript/guides/nextjs/)
66+
67+
**Minimal structure:**
68+
69+
- **Title and summary**
70+
- The title gets picked up automatically from the config.yml file
71+
- Describe what the developer will achieve by following this guide
72+
- **Prerequisites**
73+
- **Step 1: Install**
74+
- Make sure "Install" is always the first step to get developers into action quickly
75+
- Provide the primary installation method(s) for this SDK (we document alternate methods on a separate page, as in this [example](/platforms/javascript/install/))
76+
- Briefly introduce the features the wizard can enable; use an `Expandable` component to hide the content by default
77+
- List the changes the wizard applies in the developer's application, such as updating configuration files and creating example code for testing the setup later; use an `Expandable` component to hide the content by default
78+
- **Step 2: Verify Your Setup**
79+
- Explain how to test the setup. For example, direct the developer to use the examples created by the wizard
80+
- **Subsection: View Captured Data in Sentry**
81+
- Direct developers to look at the captured errors in their Sentry project
82+
- Optional: Provide detailed instructions using an `<Expandable>`
83+
- **Next Steps**
84+
- Wrap up and summarize what the developer achieved
85+
- Provide a list of links to recommended next topics
86+
87+
### Manual Setup
88+
89+
Use this template for your manual setup guides. Keep your instructions concise and ask yourself, "Does the developer need to know this to successfully finish the guide, or is this a topic they can read about later in the documentation?"
90+
91+
We recommend you base your guide on a similar existing SDK page, such as:
92+
93+
- [Next.js quick start guide manual setup](https://docs.sentry.io/platforms/javascript/guides/nextjs/manual-setup/)
94+
95+
**Minimal structure:**
96+
97+
- **Title and summary**
98+
- The title gets picked up automatically from the config.yml file
99+
- Describe what the developer will achieve by following this guide
100+
- **Prerequisites**
101+
- **Step 1: Install**
102+
- Make sure "Install" is always the first step to get developers into action quickly
103+
- Include onboarding options (feature setup) here before the installation instructions (use the [`OnboardingOption`](/contributing/pages/components/#onboarding-options) component)
104+
- **Important**: Use the `OnboardingOption` component to toggle the visibility of feature-specific instructions in the guide. For example, if a developer wants to set up Tracing but not Session Replay, they should not get instructions on how to configure Session Replay.
105+
- Briefly explain these features; use an `Expandable` component to hide the content by default
106+
- Provide the primary installation method(s) for this SDK (we document alternate methods on a separate page, as in this [example](/platforms/javascript/install/))
107+
- **Step 2: Configure**
108+
- Provide configuration examples and add comments in the code sample to limit the content you put into the surrounding prose
109+
- Show how to configure Sentry and the selected features
110+
- Use subsections for logical organization and splitting up long content
111+
- **Step 3 - Step X: SDK-specific instructions**
112+
- Create steps for source maps, tunneling, or other necessary instrumentation
113+
- Each major topic should be a separate step
114+
- **Step Y: Verify Your Setup**
115+
- Provide verification code sample(s) for this SDK
116+
- Adapt this section to the features of the selected onboarding option. For example, if Tracing is enabled, you need to describe how to verify it's set up correctly
117+
- **Subsection: View Captured Data in Sentry**
118+
- Direct developers to look at the captured errors in their Sentry project
119+
- Optional: Provide detailed instructions using an `<Expandable>`
120+
- **Next Steps**
121+
- Wrap up and summarize what the developer achieved
122+
- Provide a list of links to recommended next topics
123+
124+
## Content Placement and Reusability
125+
126+
If the content you want to include doesn't already exist, create a new file for your SDK in the respective folder in [`/src/platform-includes/`](https://github.com/getsentry/sentry-docs/tree/master/platform-includes).
127+
128+
**Examples:**
129+
130+
- **Install** [`/platform-includes/getting-started-install/`](https://github.com/getsentry/sentry-docs/tree/master/platform-includes/getting-started-install)
131+
- **Configuration** [`/platform-includes/getting-started-config/`](https://github.com/getsentry/sentry-docs/tree/master/platform-includes/getting-started-config)
132+
- **Verify** [`/src/platform-includes/getting-started-verify/`](https://github.com/getsentry/sentry-docs/tree/master/platform-includes/getting-started-verify)
133+
134+
Integrate this content into your guide using the `PlatformSection` component.
135+
136+
<Alert type="info">
137+
If the SDK supports performance monitoring, add it to the list that links back
138+
into the SDK content from Product, stored in
139+
[`/docs/product/insights/getting-started.mdx`](https://github.com/getsentry/sentry-docs/blob/master/docs/product/insights/getting-started.mdx).
140+
</Alert>
141+
142+
## Additional Requirements for Our Wizard
143+
144+
The Quick Start content is also used by our in-app onboarding wizard to get users up and running with Sentry. Keeping all content up to date is critical.
145+
146+
Important:
147+
148+
- If you update the code samples for an SDK, also update the wizard
149+
- If you add something new, such as additional configuration, to the wizard also update the manual setup guide
150+
151+
### Update the Wizard
152+
153+
The in-app wizard is where developers first integrate our SDKs. It's not a simple copy/paste from the Quick Start for two reasons:
154+
155+
1. New users lack the context that our Docs provide (think of it this way, there's no left-hand sidebar to review).
156+
2. Experienced users likely have alerts and so forth turned off, so don't expect one clear workflow. Also, don't review the workflow. Point users to the product for a tour.
157+
158+
As a result, a simple copy/paste of the Quick Start won't suffice. See the [Next.js wizard](https://github.com/getsentry/sentry-wizard/tree/master/src/nextjs) as an example.

0 commit comments

Comments
 (0)