-
Notifications
You must be signed in to change notification settings - Fork 54
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
Changes from 55 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] 9a04e06
Add dynamic search filtering based on active section
devin-ai-integration[bot] 4a8012d
Update search filter debug output
devin-ai-integration[bot] 34c1626
Add more detailed search filter logging
devin-ai-integration[bot] 1ac021b
Fix search filtering to properly scope results by section
devin-ai-integration[bot] 71379d5
Enhance search filtering with improved debugging and error handling
devin-ai-integration[bot] 182df8b
Fix search filtering with improved initialization and error handling
devin-ai-integration[bot] 79bd28c
Implement new search filtering approach using DocSearch interception
devin-ai-integration[bot] 9f7f0e6
Implement DOM-based search filtering approach
devin-ai-integration[bot] 68d5392
Fix search filtering by directly patching Algolia DocSearch
devin-ai-integration[bot] e05ea45
Implement direct DOM manipulation for search filtering
devin-ai-integration[bot] f0682cc
Implement fetch interception for Algolia search filtering
devin-ai-integration[bot] 08678a3
Implement dual-approach search filtering with DOM manipulation and fe…
devin-ai-integration[bot] d636d31
Implement robust DOM-based search filtering with multiple observers
devin-ai-integration[bot] eae0f97
Implement simplified search filtering with polling approach
devin-ai-integration[bot] 03fe2df
Implement direct Algolia DocSearch patching for section-based filtering
devin-ai-integration[bot] 5a29752
Implement direct Algolia DocSearch integration for section-based filt…
devin-ai-integration[bot] d58ebd9
Implement final Algolia DocSearch integration with proper facet filters
devin-ai-integration[bot] 01ca172
adding nav cards to welcome page
a5fdfc5
fixed Column import
d65b7dd
add tutorials
d0d7d48
Merge remote-tracking branch 'origin/redo-landing-page' into devin/17…
3d071f4
add whn example redirect
d4620bd
homepage changes
0edee30
tried to add button links
fc0ae93
a few WHN forked pages added, sidebar changes
77b4180
Fix Algolia search facet filters for section-based filtering
devin-ai-integration[bot] 587ec3e
Update search filtering to use URL filters instead of tags
devin-ai-integration[bot] 39b77da
Update search filtering to use hierarchical categories
devin-ai-integration[bot] 2734b2c
Update search filtering to use advanced syntax and path-based filters
devin-ai-integration[bot] 55cb9a1
Improve search filtering with more specific URL filters
devin-ai-integration[bot] 89806b7
Enable built-in contextualSearch in Algolia configuration
devin-ai-integration[bot] e38041a
Improve search filtering with hierarchy-based filters and better sect…
devin-ai-integration[bot] b5f6f64
Implement direct XMLHttpRequest and fetch interception for search fil…
devin-ai-integration[bot] 4f67fc3
Fix search filtering by using facetFilters instead of filters
devin-ai-integration[bot] 40e54bb
Update search filtering with improved facetFilters format
devin-ai-integration[bot] 7512d19
Update search filtering to use lvl0 hierarchy filters
devin-ai-integration[bot] b91d1c4
Fix syntax errors in search filtering script
devin-ai-integration[bot] 88648cb
Update search filtering to use direct DocSearch patching with proper …
devin-ai-integration[bot] 0a7a010
Update search filtering to directly intercept Algolia fetch requests
devin-ai-integration[bot] 166b4c4
Enhance search filtering with XMLHttpRequest interception and improve…
devin-ai-integration[bot] 9796499
Update search filtering to use path-based filters instead of tags
devin-ai-integration[bot] 8d37671
created all dupe WHN pages that render same content
1e59526
Merge branch 'devin/1744934342-warehouse-native-topbar' of https://gi…
5269103
reorg WHN and some SDK sidebars
62fab53
Improve fetch interceptor to handle Request objects
devin-ai-integration[bot] 3aa8836
Fix spellcheck error in owner name
devin-ai-integration[bot] 19edc09
Fix spellcheck errors in owner name format
devin-ai-integration[bot] fa0cae5
Replace owner keywords with generic terms to fix spellcheck
devin-ai-integration[bot] 4062ad8
added feature gate rewrite
jina-statsig fc9d273
added feature gates quickstart rewrite
jina-statsig 7c569e2
fixed landing page buttons and added sdk quickstart
jina-statsig cc62a7d
fixed WHN forked pages frontmatter
jina-statsig 7d2e98c
Merge branch 'main' into devin/1744934342-warehouse-native-topbar
brock-statsig 356f44e
reverted Resource Cards on landing page
jina-statsig 8e4b06d
added sdk cards back to homepage
jina-statsig 7479e52
condense WHN sidebar
194636a
cleanup sidebar
a38a565
removed SDK quickstarts from product docs sidebar
jina-statsig 8d15589
added quickstarts
jina-statsig ebbe31c
Update docs/sdks/quickstart.mdx
jina-statsig dc61890
fixed links
jina-statsig b368884
Merge branch 'sdk-quickstart' of https://github.com/statsig-io/docs i…
jina-statsig 16bc52f
fix link
jina-statsig 5124dfb
fixed dark mode and navbar at high zoom
jina-statsig 023d8e5
Merge branch 'main' into devin/1744934342-warehouse-native-topbar
jina-statsig 9ecdf47
Update docs/getting-started.mdx
jina-statsig 3bad669
add jinayoon to cspell
jina-statsig f18c215
fix name
jina-statsig 044b4e6
typo
jina-statsig 84c5db5
card copy
jina-statsig f8e8bc3
Update docs/guides/feature-gates-walkthrough.md
jina-statsig 5062265
merge new SDK quickstart
jina-statsig 3d38676
fix search
91899eb
Merge branch 'devin/1744934342-warehouse-native-topbar' of https://gi…
be0e033
cleanup
2255ea6
wording tweaks
fbe2404
moved some tutorials to direct devs to SDKs tab
jina-statsig a72f9c6
moved back tutorials
jina-statsig e750913
tiny fix
6e9e55d
Merge branch 'devin/1744934342-warehouse-native-topbar' of https://gi…
d1a63be
Merge branch 'main' into devin/1744934342-warehouse-native-topbar
brock-statsig File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
13 changes: 13 additions & 0 deletions
13
docs/experiments-plus/differential-impact-detection-whn.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 /> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 /> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 /> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 /> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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:jina | ||
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. | ||
|
||
 | ||
|
||
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**. | ||
|
||
 | ||
|
||
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 giong to 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: "[email protected]" }}> | ||
<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. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -194,4 +194,4 @@ if (client.checkGate("mobile_registration")) { | |
} | ||
``` | ||
|
||
## Happy Feature Gating! | ||
## Happy Feature Gating! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 /> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.