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