Skip to content

Move Warehouse Native to top navigation bar #2896

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

Merged
merged 82 commits into from
May 8, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
82 commits
Select commit Hold shift + click to select a range
5c44be3
Move Warehouse Native to top navigation bar
devin-ai-integration[bot] Apr 18, 2025
9a04e06
Add dynamic search filtering based on active section
devin-ai-integration[bot] Apr 21, 2025
4a8012d
Update search filter debug output
devin-ai-integration[bot] Apr 21, 2025
34c1626
Add more detailed search filter logging
devin-ai-integration[bot] Apr 21, 2025
1ac021b
Fix search filtering to properly scope results by section
devin-ai-integration[bot] Apr 21, 2025
71379d5
Enhance search filtering with improved debugging and error handling
devin-ai-integration[bot] Apr 21, 2025
182df8b
Fix search filtering with improved initialization and error handling
devin-ai-integration[bot] Apr 21, 2025
79bd28c
Implement new search filtering approach using DocSearch interception
devin-ai-integration[bot] Apr 21, 2025
9f7f0e6
Implement DOM-based search filtering approach
devin-ai-integration[bot] Apr 21, 2025
68d5392
Fix search filtering by directly patching Algolia DocSearch
devin-ai-integration[bot] Apr 21, 2025
e05ea45
Implement direct DOM manipulation for search filtering
devin-ai-integration[bot] Apr 21, 2025
f0682cc
Implement fetch interception for Algolia search filtering
devin-ai-integration[bot] Apr 21, 2025
08678a3
Implement dual-approach search filtering with DOM manipulation and fe…
devin-ai-integration[bot] Apr 21, 2025
d636d31
Implement robust DOM-based search filtering with multiple observers
devin-ai-integration[bot] Apr 21, 2025
eae0f97
Implement simplified search filtering with polling approach
devin-ai-integration[bot] Apr 21, 2025
03fe2df
Implement direct Algolia DocSearch patching for section-based filtering
devin-ai-integration[bot] Apr 21, 2025
5a29752
Implement direct Algolia DocSearch integration for section-based filt…
devin-ai-integration[bot] Apr 21, 2025
d58ebd9
Implement final Algolia DocSearch integration with proper facet filters
devin-ai-integration[bot] Apr 21, 2025
01ca172
adding nav cards to welcome page
Apr 21, 2025
a5fdfc5
fixed Column import
Apr 21, 2025
d65b7dd
add tutorials
Apr 24, 2025
d0d7d48
Merge remote-tracking branch 'origin/redo-landing-page' into devin/17…
Apr 24, 2025
3d071f4
add whn example redirect
Apr 24, 2025
d4620bd
homepage changes
Apr 24, 2025
0edee30
tried to add button links
Apr 24, 2025
fc0ae93
a few WHN forked pages added, sidebar changes
Apr 25, 2025
77b4180
Fix Algolia search facet filters for section-based filtering
devin-ai-integration[bot] Apr 25, 2025
587ec3e
Update search filtering to use URL filters instead of tags
devin-ai-integration[bot] Apr 25, 2025
39b77da
Update search filtering to use hierarchical categories
devin-ai-integration[bot] Apr 25, 2025
2734b2c
Update search filtering to use advanced syntax and path-based filters
devin-ai-integration[bot] Apr 25, 2025
55cb9a1
Improve search filtering with more specific URL filters
devin-ai-integration[bot] Apr 25, 2025
89806b7
Enable built-in contextualSearch in Algolia configuration
devin-ai-integration[bot] Apr 25, 2025
e38041a
Improve search filtering with hierarchy-based filters and better sect…
devin-ai-integration[bot] Apr 25, 2025
b5f6f64
Implement direct XMLHttpRequest and fetch interception for search fil…
devin-ai-integration[bot] Apr 25, 2025
4f67fc3
Fix search filtering by using facetFilters instead of filters
devin-ai-integration[bot] Apr 25, 2025
40e54bb
Update search filtering with improved facetFilters format
devin-ai-integration[bot] Apr 25, 2025
7512d19
Update search filtering to use lvl0 hierarchy filters
devin-ai-integration[bot] Apr 25, 2025
b91d1c4
Fix syntax errors in search filtering script
devin-ai-integration[bot] Apr 25, 2025
88648cb
Update search filtering to use direct DocSearch patching with proper …
devin-ai-integration[bot] Apr 25, 2025
0a7a010
Update search filtering to directly intercept Algolia fetch requests
devin-ai-integration[bot] Apr 25, 2025
166b4c4
Enhance search filtering with XMLHttpRequest interception and improve…
devin-ai-integration[bot] Apr 25, 2025
9796499
Update search filtering to use path-based filters instead of tags
devin-ai-integration[bot] Apr 25, 2025
8d37671
created all dupe WHN pages that render same content
Apr 25, 2025
1e59526
Merge branch 'devin/1744934342-warehouse-native-topbar' of https://gi…
Apr 28, 2025
5269103
reorg WHN and some SDK sidebars
Apr 29, 2025
62fab53
Improve fetch interceptor to handle Request objects
devin-ai-integration[bot] Apr 29, 2025
3aa8836
Fix spellcheck error in owner name
devin-ai-integration[bot] Apr 29, 2025
19edc09
Fix spellcheck errors in owner name format
devin-ai-integration[bot] Apr 29, 2025
fa0cae5
Replace owner keywords with generic terms to fix spellcheck
devin-ai-integration[bot] Apr 29, 2025
4062ad8
added feature gate rewrite
jina-statsig Apr 29, 2025
fc9d273
added feature gates quickstart rewrite
jina-statsig Apr 29, 2025
7c569e2
fixed landing page buttons and added sdk quickstart
jina-statsig Apr 29, 2025
cc62a7d
fixed WHN forked pages frontmatter
jina-statsig Apr 29, 2025
7d2e98c
Merge branch 'main' into devin/1744934342-warehouse-native-topbar
brock-statsig Apr 29, 2025
356f44e
reverted Resource Cards on landing page
jina-statsig Apr 29, 2025
8e4b06d
added sdk cards back to homepage
jina-statsig Apr 29, 2025
7479e52
condense WHN sidebar
Apr 30, 2025
194636a
cleanup sidebar
Apr 30, 2025
a38a565
removed SDK quickstarts from product docs sidebar
jina-statsig May 1, 2025
8d15589
added quickstarts
jina-statsig May 3, 2025
ebbe31c
Update docs/sdks/quickstart.mdx
jina-statsig May 4, 2025
dc61890
fixed links
jina-statsig May 4, 2025
b368884
Merge branch 'sdk-quickstart' of https://github.com/statsig-io/docs i…
jina-statsig May 4, 2025
16bc52f
fix link
jina-statsig May 4, 2025
5124dfb
fixed dark mode and navbar at high zoom
jina-statsig May 5, 2025
023d8e5
Merge branch 'main' into devin/1744934342-warehouse-native-topbar
jina-statsig May 5, 2025
9ecdf47
Update docs/getting-started.mdx
jina-statsig May 5, 2025
3bad669
add jinayoon to cspell
jina-statsig May 5, 2025
f18c215
fix name
jina-statsig May 5, 2025
044b4e6
typo
jina-statsig May 5, 2025
84c5db5
card copy
jina-statsig May 5, 2025
f8e8bc3
Update docs/guides/feature-gates-walkthrough.md
jina-statsig May 6, 2025
5062265
merge new SDK quickstart
jina-statsig May 6, 2025
3d38676
fix search
May 7, 2025
91899eb
Merge branch 'devin/1744934342-warehouse-native-topbar' of https://gi…
May 7, 2025
be0e033
cleanup
May 7, 2025
2255ea6
wording tweaks
May 7, 2025
fbe2404
moved some tutorials to direct devs to SDKs tab
jina-statsig May 7, 2025
a72f9c6
moved back tutorials
jina-statsig May 7, 2025
e750913
tiny fix
May 7, 2025
6e9e55d
Merge branch 'devin/1744934342-warehouse-native-topbar' of https://gi…
May 7, 2025
d1a63be
Merge branch 'main' into devin/1744934342-warehouse-native-topbar
brock-statsig May 8, 2025
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
5 changes: 5 additions & 0 deletions docs/experiments-plus/create-new.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,11 @@ last_update:
date: 2025-03-04
---


:::tip[Warehouse Native users]
You're viewing the Cloud docs for this page. Metrics and experiments behave differently in Warehouse Native. Read about [Configuring Experiments in Warehouse Native](/statsig-warehouse-native/features/experiment-options).
:::

This guide walks you through the steps to create and configure a new experiment in Statsig. Whether you're running a simple A/B test or a more complex multi-variant experiment, these instructions will help you set up your experiment correctly.

### User-level Experiments
Expand Down
13 changes: 13 additions & 0 deletions docs/experiments-plus/differential-impact-detection-whn.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
title: Differential Impact Detection
sidebar_label: Differential Impact
slug: /experiments-plus/differential-impact-detection-whn
keywords:
- owner:vm
last_update:
date: 2025-01-30
---

import DifferentialImpact from '@site/docs/experiments-plus/differential-impact-detection.md';

<DifferentialImpact />
2 changes: 0 additions & 2 deletions docs/experiments-plus/introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,6 @@ Experiments are ideal when you want to:
- Run mutually exclusive experiments in parallel.
- Measure the direct impact of changes on product and business metrics.

For a deeper understanding of using experiments in Statsig, see "[Experiments Overview](/experiments-plus)" section.

---

## Why Experiment?
Expand Down
13 changes: 13 additions & 0 deletions docs/experiments-plus/stratified-sampling-whn.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
title: Stratified Sampling
sidebar_label: Stratified Sampling
slug: /experiments-plus/stratified-sampling-whn
keywords:
- owner:vm
last_update:
date: 2024-10-02
---

import StratifiedSampling from '@site/docs/experiments-plus/stratified-sampling.md';

<StratifiedSampling />
13 changes: 13 additions & 0 deletions docs/experiments/meta-analysis-whn.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
title: Meta-Analysis
sidebar_label: Meta-Analysis
slug: /experimentation/meta-analysis-whn
keywords:
- owner:vm
last_update:
date: 2025-03-17
---

import MetaAnalysis from "@site/docs/experiments/meta-analysis.md"

<MetaAnalysis />
13 changes: 13 additions & 0 deletions docs/experiments/quality-score-whn.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
title: Experiment Quality Score
sidebar_label: Quality Score
slug: /experimentation/quality-score-whn
keywords:
- owner:vm
last_update:
date: 2025-02-14
---

import QualityScore from '@site/docs/experiments/quality-score.mdx';

<QualityScore />
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,4 @@ You can enable it in Settings -> Experimentation -> Experiment Quality Score. Th
## Viewing it
When enabled, you can view the experiment quality score on any experiment. Applicable checks will be evaluated.
![image](https://github.com/user-attachments/assets/d7483b96-8077-419d-9e23-a3e648b7e066)

86 changes: 64 additions & 22 deletions docs/getting-started.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -11,45 +11,87 @@ import SDKAndFrameworks from '../src/components/getting-started/SDKAndFrameworks
import ImportantConcepts from '../src/components/getting-started/ImportantConcepts';
import Styles from '../src/components/getting-started/Styles';
import LandingResources from '../src/components/getting-started/Resources';
import React from 'react';
import Card from '@site/src/components/Card';
import CardHeader from '@site/src/components/Card/CardHeader';
import CardBody from '@site/src/components/Card/CardBody';
import CardFooter from '@site/src/components/Card/CardFooter';
import Columns from '@site/src/components/Columns';
import Column from '@site/src/components/Columns/Column';
import Link from '@docusaurus/Link';

<Styles />
# Welcome to Statsig Documentation
Statsig is the complete platform for product growth, empowering your team to build and innovate like the best tech companies in the world.

<LandingResources />
You can use Statsig’s products directly with your own data warehouse through [Warehouse Native](/statsig-warehouse-native/introduction). This allows you to leverage Statsig’s features while keeping data in your existing infrastructure.
Statsig empowers you to ship, measure, and learn from your releases using the same tools as the best tech companies in the world. With Statsig, you can run thousands of A/B tests, safely rollout features, and dive deep on core business metrics and user behavior—all on a single, unified platform.

<div className="welcome-card-container padding--lg">
<Column className="padding--sm">
<Card className="welcome-card" shadow="tl">
<CardHeader>
<img src="/img/icons/flash.svg" alt="Flash Icon" className="icon" style={{ width: '36px' }}/>
<h3>SDK Quickstart</h3>
<p>Install the Statsig SDK and get started in minutes.</p>
</CardHeader>
<CardFooter>
<Link to="/sdks/quickstart">
<button className="button button--secondary button--block">Get started</button>
</Link>
</CardFooter>
</Card>
</Column>

<Column className="padding--sm">
<Card className="welcome-card" shadow="tl">
<CardHeader>
<img src="/img/icons/organization.svg" alt="Organization Icon" className="icon" style={{ width: '36px' }}/>
<h3>Warehouse Native</h3>
<p>Read about how to use Statsig with your data warehouse.</p>
</CardHeader>
<CardFooter>
<Link to="/statsig-warehouse-native/introduction">
<button className="button button--secondary button--block">Read guides</button>
</Link>
</CardFooter>
</Card>
</Column>

<Column className="padding--sm">
<Card className="welcome-card" shadow="tl">
<CardHeader>
<img src="/img/icons/description.svg" alt="Description Icon" className="icon" style={{ width: '36px' }}/>
<h3>Intro to Statsig</h3>
<p>Learn more about core concepts and features of Statsig.</p>
</CardHeader>
<CardFooter>
<Link to="/understanding-platform">
<button className="button button--secondary button--block">Learn more</button>
</Link>
</CardFooter>
</Card>
</Column>
</div>
---

## Getting Started with Statsig
Statsig supports over **30 SDKs and frameworks**, allowing you to quickly integrate with your application, whether you’re building for the web, mobile, or server environments. Follow these simple steps to get started in minutes:
## Add Statsig to Your Website (JavaScript Snippet)

The easiest way to get up and running is by adding the Statsig JavaScript snippet to your website. This setup takes just a few seconds:
## Key Features

Paste the following code into the `<head>` section of your website, replacing `"YOUR_CLIENT_KEY"` with your project’s **Client API Key**, which you can find in the [Statsig Console](https://console.statsig.com/api_keys).
<LandingResources />

```html
<script src="https://cdn.jsdelivr.net/npm/@statsig/js-client@3/build/statsig-js-client+session-replay+web-analytics.min.js?apikey=[YOUR_CLIENT_KEY]"></script>
```
You can use Statsig's products directly with your own data warehouse through [Warehouse Native](/statsig-warehouse-native/introduction). This allows you to leverage Statsig's features while keeping data in your existing infrastructure.

Once installed, you’ll be able to:
- Start **recording events**.
- Use **session replays**.
- Leverage Statsig’s **experiments** and **feature flags** right away.
---

## Explore SDKs

For greater control, Statsig offers SDKs for a wide variety of platforms, including JavaScript, Python, iOS, Android, and more. Select the SDK that fits your project and follow the installation guide:

<SDKAndFrameworks />

- If you dont see the SDK or framework you need, feel free to reach out directly in our [Slack Community](https://statsig.com/slack).
If you don't see the SDK or framework you need, feel free to reach out directly in our [Slack Community](https://statsig.com/slack).

---

## Learn More and Get Help

Resources to help you make the most of Statsig:

# Learning Resources
- **Videos**: Check out our full library of [Statsig Onboarding Training Videos](https://www.youtube.com/playlist?list=PLNJ9pKAaib3J0fYyCYRX3JhtSpwtiEL0Q) on Youtube.
- **Community**: Join our [Slack Community](https://statsig.com/slack) to connect with other users and get help from the Statsig team.
- **Blog**: Stay updated with the latest developments in product experimentation and feature management on our [Blog](https://statsig.com/blog).

Expand Down
2 changes: 1 addition & 1 deletion docs/guides/abn-tests.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
sidebar_label: Your First A/B Test
sidebar_label: Run your first Experiment
title: Your First A/B Test
keywords:
- owner:vm
Expand Down
121 changes: 121 additions & 0 deletions docs/guides/feature-gates-walkthrough.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
---
sidebar_label: Create your first Feature Gate
title: Create your first Feature Gate
slug: guides/feature-gates
keywords:
- owner:jinayoon
last_update:
date: 2025-04-28
---

This tutorial walks you through how to create your first Feature Gate in Statsig from end to end. Feature Gates, also known as feature flags, are a way to safely control the rollout of new features to your users without deploying additional code. Common examples for using Feature Gates include shipping new UI elements, API endpoints, or product features.

By the end of this tutorial, you will have set up:
* A **Feature Gate** in the Statsig console
* A **targeting rule** to enable the feature for a segment of Users
* A **client-side integration** using the Statsig Client SDK


## Prerequisites
1. A [Statsig account](https://console.statsig.com/sign_up)
2. An existing application you can integrate the Statsig Client SDK into

## Part 1: Create a Feature Gate in the console
For the purposes of this tutorial, we will pretend we are adding a Feature Gate to deploy a new UI element to a user with the "statsig.com" email domain. You can follow along with a specific feature if you have your own scenario in mind.

1. Navigate to [Feature Gates](https://console.statsig.com/gates) in the Statsig console.

![Feature Gates Page](https://github.com/user-attachments/assets/00331234-34b7-48ef-98a9-9a094e44af1b)

2. Then, click on **Get Started** if you don't have any Feature Gates set up yet, or **Create** to create a new one.

3. Name your gate "Example Gate". This name will also be used to identify the Feature Gate later using the SDK.

4. Enter a description for your Feature Gate. It's good practice to describe it in a way that other teammates can easily understand. For example: "This Feature Gate is for launching an example feature for Statsig employees only."


## Part 2: Configure targeting rules
In Statsig, when you create a Feature Gate, they are enabled by default. In other words, all users will be excluded from the feature until you add a rule that lets users "pass" the gate.

This means that in order to actually turn on this feature, you will need to add rules to target this Feature Gate to a specific set of folks. Let's walk through doing this in the console.

1. In the console, on the page for the Feature Gate you just created, click on **Add New Rule**.

![Adding a new rule](https://github.com/user-attachments/assets/f4717e74-c1a7-4e3e-b894-13622f230f71)

2. Give this rule a **Name**, such as "Statsig Users Only".

3. Select **Email** as our targeting criteria so we can target users based on their email address.

4. In the User section of the dropdown, select the **Any Of (Case Insensitive)** operator, and then add ``statsig.com`` for our email-based user targeting.

5. Set the **Pass Percentage** to ``100%``. Doing so ensures that all users with the ``statsig.com`` email domain will pass the Feature Gate and see the new feature.

6. Click **Add Rule** to add this rule to your Feature Gate.

7. Next, hit **Save** on the bottom right to commit these changes to the Feature Gate.

You can now test this feature gate by configuring the User object in the "Test Gate" section.

## Part 3: Create a Client API Key
Now that you've set up the Feature Gate from the console, it's time to integrate it into your product with the Statsig SDK. We'll first need to create a new Client API key to use in our product.

1. Navigate to [**Keys & Environments**](https://console.statsig.com/api_keys) in the Statsig console. You can also find this by going to **Settings** at the bottom left of the Statsig console.

2. Scroll down to **API Keys**. Click on **Generate New Key**.

3. In the dropdown, select **Client**.

4. Copy the Client API Key you just created to your clipboard.

## Part 4: Integrate the Statsig SDK
Now that we have our Client API Key, we can go ahead and integrate the Statsig Client SDK into our product. For the purposes of this tutorial, we will use the React SDK, but you can follow along with a different SDK if you prefer.

:::tip
Statsig offers over 20 client and server-side SDKs. Check out the full list of [SDKs](/sdks/client-vs-server#available-sdks) to find the one that best fits your needs.
:::

1. Install the Statsig React SDK using your preferred package manager. For this tutorial, we will use npm.

```bash
npm install @statsig/react
```

2. Import the SDK in your `App.js` file:

```tsx
import { StatsigProvider } from "@statsig/react-bindings";
```

3. Next, wrap your app's content within the `StatsigProvider` component. In the following code snippet, we're also creating a [User](/concepts/user) object so that we can target our Feature Gate.


```tsx
function App() {
return (
<StatsigProvider
sdkKey="client-KEY"
user={{ userID: "Example", email: "example@statsig.com" }}>
<div>Hello world</div>
</StatsigProvider>
);
}

export default App;
```

4. Make sure to also replace `client-KEY` with the Client API Key you copied in Step 3.

## Part 5: Check your Feature Gate
Finally, you can now evaluate a Feature Gate in your product code by getting the client with the `useStatsigClient` hook, and then calling `checkGate`.

1. Add the following code to your `App.js` file. In this snippet, the `example_gate` is the name of the Feature Gate you created in Step 1.

```tsx
const { client } = useStatsigClient();
return (
<div>Gate is {client.checkGate('check_user') ? 'passing' : 'failing'}.</div>
);
```

2. Run your app and see the result! The app should render the text "Gate is passing" since we configured a rule in Part 1 that targets all users with the ``statsig.com`` email domain, and we are using that same email domain in this client's User object.
2 changes: 1 addition & 1 deletion docs/guides/first-feature.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -194,4 +194,4 @@ if (client.checkGate("mobile_registration")) {
}
```

## Happy Feature Gating!
## Happy Feature Gating!
2 changes: 1 addition & 1 deletion docs/guides/logging-events.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
sidebar_label: Logging Events
sidebar_label: Log your first Custom Event
title: Logging Events & the LogEvent API
keywords:
- owner:brock
Expand Down
13 changes: 13 additions & 0 deletions docs/insights/aggregated-impact-whn.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
title: Metric Insights and Aggregated Impact
sidebar_label: Aggregated Impact
slug: /aggregated-impact-whn
keywords:
- owner:vm
last_update:
date: 2025-03-18
---

import AggregatedImpact from '@site/docs/insights/aggregated-impact.md';

<AggregatedImpact />
5 changes: 5 additions & 0 deletions docs/metrics/101.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,11 @@ last_update:

# Metrics Overview


:::tip[Warehouse Native users]
You're viewing the Cloud docs for this page. Metrics and experiments behave differently in Warehouse Native. Read more in [Data & Semantic Layer in Warehouse Native](/statsig-warehouse-native/configuration/data-and-semantic-layer).
:::

This 101-level user guide steps through the basic concepts to help you set up essential product metrics in your Statsig Project.
1. [How Metrics Work on Statsig](/metrics/how-metrics-work)
2. [Raw Events](/metrics/raw-events)
Expand Down
4 changes: 4 additions & 0 deletions docs/metrics/how-metrics-work.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,10 @@ last_update:

# How Metrics Work on Statsig

:::tip[Warehouse Native users]
You're viewing the Cloud docs for this page. Metrics and experiments behave differently in Warehouse Native. Read more in [Data & Semantic Layer in Warehouse Native](/statsig-warehouse-native/configuration/data-and-semantic-layer).
:::

A metric in Statsig is a numeric value for each user on a given day. This value can be aggregated across the entire user base or a subset, such as the test or control group of an experiment.

For example, say one user made two purchases on September 1st, and another made only one. These values can be aggregated across multiple users to calculate the total number of purchases across all users on September 1st.
Expand Down
Loading