Intro & Setup
What is GrowthBook?
Section titled “What is GrowthBook?”GrowthBook is an open-source platform that combines three capabilities in a single tool:
- Feature flags — gate any code path behind a named toggle you control from the UI.
- A/B testing & experimentation — run statistically rigorous experiments without writing analysis code.
- Analytics on your own data warehouse — connect Snowflake, BigQuery, Redshift, or any SQL source you already own; GrowthBook never touches your raw events.
You can self-host it on your own infrastructure (Docker, Kubernetes) or use GrowthBook Cloud with no server to manage. This course uses Docker so every concept is reproducible locally.
What this module covers
Section titled “What this module covers”| Lesson | Slug | Topic |
|---|---|---|
| 1 | index (this page) | Module overview & the core loop |
| 2 | what-is-growthbook | Three pillars — flags, experiments, analytics |
| 3 | run-with-docker | Docker Compose setup |
| 4 | first-login | Admin account & navigating the UI |
| 5 | sdk-connection | SDK Connection key & first SDK call |
The core loop
Section titled “The core loop”Every GrowthBook workflow follows four steps:
- Run GrowthBook — start the platform (Docker or Cloud).
- Log in — create your admin account and explore the dashboard.
- Create a feature flag — give it a key, a type, and a default value.
- Read the flag in your app via the SDK — one
isOn()call is all it takes.
The snippet below shows the minimal SDK setup you will build toward in Lesson 5.
import { GrowthBook } from "@growthbook/growthbook";
const gb = new GrowthBook({ apiHost: "https://cdn.growthbook.io", clientKey: "sdk-abc123", // from SDK Connection page});
await gb.loadFeatures();
if (gb.isOn("dark-mode")) { enableDarkMode();}import { GrowthBook } from "@growthbook/growthbook";
const gb = new GrowthBook({
apiHost: "https://cdn.growthbook.io",
clientKey: "sdk-abc123", // from SDK Connection page
});
await gb.loadFeatures();
if (gb.isOn("dark-mode")) {
enableDarkMode();
}