Quick Start
Get up and running with Flagpool in 5 minutes
This guide walks you through setting up Flagpool and implementing your first feature flag in under 5 minutes.
1. Create a Flagpool Account
If you haven't already, sign up for a free Flagpool account. No credit card required.
2. Create a Project
After signing in:
- Click New Project in the dashboard
- Give your project a name (e.g., "My App")
- Click Create Project
Your project comes with three default environments: Development, Staging, and Production.
3. Get Your Credentials
Navigate to Settings → API Keys and copy the following for your desired environment (start with Development):
- Project ID — your project UUID
- API Key — environment-specific key (e.g.,
env_abc123...) - Decryption Key — used for local flag evaluation (e.g.,
tlk_xyz...)
Each environment has its own API key and decryption key. Use the Development credentials for local testing.
4. Install the SDK
Encrypted target lists? Your SDK also needs the environment's decryption key and a crypto adapter registered before initialization. See the crypto adapter guide for setup in your language.
npm install @flagpool/sdk
npm install @flagpool/react
pip install flagpool-sdk
go get github.com/flagpool/flagpool-sdk-go
<dependency>
<groupId>io.flagpool</groupId>
<artifactId>flagpool-sdk</artifactId>
<version>0.2.0</version>
</dependency>
dotnet add package Flagpool.Sdk
5. Initialize the SDK
import { FlagpoolClient } from '@flagpool/sdk'
const client = new FlagpoolClient({
projectId: 'your-project-id',
apiKey: 'your-api-key',
decryptionKey: 'your-decryption-key',
})
await client.init()
import { FlagpoolProvider } from '@flagpool/react'
function App() {
return (
<FlagpoolProvider
projectId="your-project-id"
apiKey="your-api-key"
decryptionKey="your-decryption-key"
>
<YourApp />
</FlagpoolProvider>
)
}
from flagpool_sdk import FlagpoolClient
client = FlagpoolClient(
project_id="your-project-id",
api_key="your-api-key",
decryption_key="your-decryption-key",
)
client.init()
import flagpool "github.com/flagpool/flagpool-sdk-go"
client := flagpool.NewClient(flagpool.ClientOptions{
ProjectID: "your-project-id",
APIKey: "your-api-key",
DecryptionKey: "your-decryption-key",
})
client.Init()
import io.flagpool.sdk.FlagpoolClient;
import io.flagpool.sdk.Types.ClientOptions;
FlagpoolClient client = new FlagpoolClient(
new ClientOptions()
.setProjectId("your-project-id")
.setApiKey("your-api-key")
.setDecryptionKey("your-decryption-key")
);
client.init();
using Flagpool.Sdk;
var client = new FlagpoolClient(new FlagpoolClientOptions
{
ProjectId = "your-project-id",
ApiKey = "your-api-key",
DecryptionKey = "your-decryption-key",
});
await client.InitAsync();
6. Create Your First Flag
- Go to Flags in the dashboard
- Click New Flag
- Enter a key:
new-checkout-flow - Set the flag type to Boolean
- Click Create Flag
By default, the flag is off for all users.
7. Evaluate the Flag
const showNewCheckout = client.isEnabled('new-checkout-flow')
if (showNewCheckout) {
// Show new checkout flow
} else {
// Show existing checkout flow
}
import { useFlag } from '@flagpool/react'
function Checkout() {
const showNewCheckout = useFlag('new-checkout-flow')
return showNewCheckout ? <NewCheckoutFlow /> : <ExistingCheckoutFlow />
}
show_new_checkout = client.is_enabled("new-checkout-flow")
if show_new_checkout:
# Show new checkout flow
else:
# Show existing checkout flow
if client.IsEnabled("new-checkout-flow") {
// Show new checkout flow
} else {
// Show existing checkout flow
}
if (client.isEnabled("new-checkout-flow")) {
// Show new checkout flow
} else {
// Show existing checkout flow
}
if (client.IsEnabled("new-checkout-flow"))
{
// Show new checkout flow
}
else
{
// Show existing checkout flow
}
8. Enable the Flag
- Go back to the dashboard
- Find your
new-checkout-flowflag - Toggle it on for the Development environment
- Refresh your app — the flag is now enabled!
Next Steps
- Installation — detailed installation guide for all platforms
- Creating Your First Flag — flag configuration in depth
- Using Flags in Code — advanced evaluation patterns