Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create "How to write – Quick Start" page #12945

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions docs/contributing/approach/sdk-docs/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,15 @@ Our structure for SDK content focuses on getting a user up and running quickly,

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:

1. **Getting Started**
1. **Quick Start / Getting Started (legacy)**

A single, critical page.

**[How to Write - Getting Started](/contributing/approach/write-getting-started)**
For new SDKs and updated guides, use:
**[How to Write - Quick Start](/contributing/approach/write-quick-start)**
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
**[How to Write - Quick Start](/contributing/approach/write-quick-start)**
**[How to Write - Quick Start](/contributing/approach/sdk-docs/write-quick-start/)**


To update existing Getting Started guides, use:
**[How to Write - Getting Started](/contributing/approach/write-getting-started)**

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

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,12 @@ noindex: true
sidebar_order: 30
---

<Alert type="info">
This page describes the legacy "Getting Started" guide format. New SDKs and
guides that have been updated should use the [Quick Start guide
format](/contributing/approach/write-quick-start).
</Alert>

A new platform/SDK should base it's Getting Started page of off a similar existing SDK page.

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

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


## But, that's not all

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.
Expand Down
158 changes: 158 additions & 0 deletions docs/contributing/approach/sdk-docs/write-quick-start.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,158 @@
---
title: How to Write - Quick Start
noindex: true
sidebar_order: 25
---

We're transitioning from [Getting Started guides](/contributing/approach/sdk-docs/write-getting-started/) to Quick Start Guides. New SDKs should use the Quick Start guide format outlined on this page. This change is still in progress, so you may still encounter "Getting Started" guides in existing SDKs.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
We're transitioning from [Getting Started guides](/contributing/approach/sdk-docs/write-getting-started/) to Quick Start Guides. New SDKs should use the Quick Start guide format outlined on this page. This change is still in progress, so you may still encounter "Getting Started" guides in existing SDKs.
We're transitioning from [Getting Started guides](/contributing/approach/sdk-docs/write-getting-started/) to Quick Start Guides. New SDKs should use the Quick Start guide format outlined on this page. This change is still in progress, so you may still encounter Getting Started guides for existing SDKs.


<Alert type="info" title="Note">
For existing Getting Started guides, refer to [How to Write - Getting
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
For existing Getting Started guides, refer to [How to Write - Getting
If you want to update an existing Getting Started Guide without refactoring it into a Quick Start guide, see [How to Write - Getting

Started](/contributing/approach/sdk-docs/write-getting-started/). For example,
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
Started](/contributing/approach/sdk-docs/write-getting-started/). For example,
Started](/contributing/approach/sdk-docs/write-getting-started/).

when you want to update a guide without changing it into a Quick Start guide.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
when you want to update a guide without changing it into a Quick Start guide.

If you're unsure what kind of guide you're looking at, ask a question by
opening an issue in GitHub.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
opening an issue in GitHub.
[opening an issue in GitHub](https://github.com/getsentry/sentry-docs/issues/new/choose).

</Alert>

<Expandable type="info" title="Why the change?">
This change stems from our commitment to following best practices in documentation and making it easier for everyone to create and use our guides.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
This change stems from our commitment to following best practices in documentation and making it easier for everyone to create and use our guides.
This change stems from our commitment to following best practices and making our docs as accessible as possible.


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 customers in reaching their goals with Sentry.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
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 customers in reaching their goals with Sentry.
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.


**Quick Start vs. Getting Started:**
| | Quick Start | Getting Started |
| -------- | ----------------------------------------------------------------------------------- | --------------------------------------------------------------------- |
| **Focus** | Goal-oriented, immediate action, minimal steps | Learning-oriented, broader concepts, background information |
| **Content** | Describes critical steps and doesn't explain much about how and why | More explanatory and provides background information |
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
| **Content** | Describes critical steps and doesn't explain much about how and why | More explanatory and provides background information |
| **Content** | Highlights critical steps with less focus on the how and why | More explanatory and provides background information |

| **Audience** | Developers who want to get started quickly | Developers seeking a deeper understanding |
| **Format** | Single page; Concise | Often spans multiple pages; Comprehensive |

</Expandable>

Our Quick Start guides aim to:

- Enable developer to quickly set up Sentry with features such as Error Monitoring, Tracing, and Session Replay
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- Enable developer to quickly set up Sentry with features such as Error Monitoring, Tracing, and Session Replay
- Enable developers to quickly onboard Sentry with features such as Error Monitoring, Tracing, and Session Replay

- Keep instructions concise by avoiding unnecessary explanations or background information
- Focus on action by including code examples and commands
- Achieve a functional Sentry setup with visible results in a customer's Sentry project
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- Achieve a functional Sentry setup with visible results in a customer's Sentry project
- Achieve a functional Sentry setup with visible results in a user's Sentry project

- Serve as the basis for further customization

## config.yml
Copy link
Contributor

@coolguyzone coolguyzone Mar 6, 2025

Choose a reason for hiding this comment

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

This transition feels a little abrupt, how about giving a little context to what this file is and why we are setting it up? For example something like:

Structuring the config.yml File

The config.yml file provides SDK-level details such as the support level and device categories . . . This file resides in the . . .


This file resides in the `/docs/platform/<SDK_name>/` directory. An example:

```yaml
title: JavaScript
caseStyle: camelCase
supportLevel: production
sdk: "sentry.javascript.browser"
categories:
- browser
```

## Structure Templates

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.

If an SDK has both Quick Start guides, make sure that both guides reach the same outcome, meaning the modifications in the customer's project should be consistent (within reason).

### Wizard Setup

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.

We recommend you base your guide on a similar existing SDK page, such as:

- [Next.js quick start guide wizard setup](/platforms/javascript/guides/nextjs/)

**Minimal structure:**

- **Title and summary**
- The title gets picked up automatically from the config.yml file
- Describe what the developer will achieve by following this guide
- **Prerequisites**
- **Step 1: Install**
- Make sure "Install" is always the first step to get developers into action quickly
- Provide the primary installation method(s) for this SDK (we document alternate methods on a separate page, as in this [example](/platforms/javascript/install/))
- Briefly introduce the features the wizard can enable; use an `Expandable` component to hide the content by default
- 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
- **Step 2: Verify Your Setup**
- Explain how to test the setup. For example, direct the developer to use the examples created by the wizard
- **Subsection: View Captured Data in Sentry**
- Direct developers to look at the captured errors in their Sentry project
- Optional: Provide detailed instructions using an `<Expandable>`
- **Next Steps**
- Wrap up and summarize what the developer achieved
- Provide a list of links to recommended next topics

### Manual Setup

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?"

We recommend you base your guide on a similar existing SDK page, such as:

- [Next.js quick start guide manual setup](https://docs.sentry.io/platforms/javascript/guides/nextjs/manual-setup/)

**Minimal structure:**

- **Title and summary**
- The title gets picked up automatically from the config.yml file
- Describe what the developer will achieve by following this guide
- **Prerequisites**
- **Step 1: Install**
- Make sure "Install" is always the first step to get developers into action quickly
- Include onboarding options (feature setup) here before the installation instructions (use the [`OnboardingOption`](/contributing/pages/components/#onboarding-options) component)
- **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.
- Briefly explain these features; use an `Expandable` component to hide the content by default
- Provide the primary installation method(s) for this SDK (we document alternate methods on a separate page, as in this [example](/platforms/javascript/install/))
- **Step 2: Configure**
- Provide configuration examples and add comments in the code sample to limit the content you put into the surrounding prose
- Show how to configure Sentry and the selected features
- Use subsections for logical organization and splitting up long content
- **Step 3 - Step X: SDK-specific instructions**
- Create steps for source maps, tunneling, or other necessary instrumentation
- Each major topic should be a separate step
- **Step Y: Verify Your Setup**
- Provide verification code sample(s) for this SDK
- 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
- **Subsection: View Captured Data in Sentry**
- Direct developers to look at the captured errors in their Sentry project
- Optional: Provide detailed instructions using an `<Expandable>`
- **Next Steps**
- Wrap up and summarize what the developer achieved
- Provide a list of links to recommended next topics

## Content Placement and Reusability

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).

**Examples:**

- **Install** [`/platform-includes/getting-started-install/`](https://github.com/getsentry/sentry-docs/tree/master/platform-includes/getting-started-install)
- **Configuration** [`/platform-includes/getting-started-config/`](https://github.com/getsentry/sentry-docs/tree/master/platform-includes/getting-started-config)
- **Verify** [`/src/platform-includes/getting-started-verify/`](https://github.com/getsentry/sentry-docs/tree/master/platform-includes/getting-started-verify)

Integrate this content into your guide using the `PlatformSection` component.

<Alert type="info">
If the SDK supports performance monitoring, add it to the list that links back
into the SDK content from Product, stored in
[`/docs/product/insights/getting-started.mdx`](https://github.com/getsentry/sentry-docs/blob/master/docs/product/insights/getting-started.mdx).
</Alert>

## Additional Requirements for Our Wizard

The Quick Start 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.

Important:

- If you update the code samples for an SDK, also update the wizard
- If you add something new, such as additional configuration, to the wizard also update the manual setup guide

### Update the Wizard

The in-app wizard is where customers first implement our SDKs. It's not a simple copy/paste from the Quick Start for two reasons:

1. New customers lack the context that our Docs provide (think of it this way, there's no left-hand sidebar to review).
2. Experienced customers likely have alerts and so forth turned off, so don't expect one clear workflow. Also, don't review the workflow. Point customers to the product for a tour.

As a result, a simple copy/paste of the Quick Start won't suffice. See the JavaScript wizard as an example.
Loading