add-feature-flag
Add PostHog feature flags for gradual rollouts, A/B tests, or beta features. Use when implementing feature toggles, experiments, or canary releases.
Installation
Suivez les instructions du dépôt pour votre agent. Consultez les fichiers et dépendances avant l’installation.
Voir la source ↗GuidesInstructions
Add Feature Flag
When to Use
- Gradual feature rollouts (canary releases)
- A/B testing and experiments
- Beta feature gating
- Quick feature kill switches
Server vs Client
| Use Server-Side When | Use Client-Side When |
|---|---|
| SEO-critical content | UI-only changes |
| No flicker required | Flicker acceptable |
| Performance critical | Simpler implementation |
Server-Side (Flicker-Free)
import type { Route } from './+types/product-page';
import { isFeatureEnabled } from '~/lib/posthog.server';
export async function loader({ request }: Route.LoaderArgs) {
const showNewLayout = await isFeatureEnabled('new-product-layout', request);
return {
featureFlags: { showNewLayout },
};
}
export default function ProductPage({ loaderData }: Route.ComponentProps) {
const { featureFlags } = loaderData;
return featureFlags.showNewLayout ? <NewLayout /> : <LegacyLayout />;
}
Client-Side (Simpler)
import { usePostHog } from 'posthog-js/react';
import { useEffect, useState } from 'react';
export default function FeatureComponent() {
const posthog = usePostHog();
const [showFeature, setShowFeature] = useState(false);
useEffect(() => {
if (posthog) {
setShowFeature(posthog.isFeatureEnabled('new-feature') ?? false);
}
}, [posthog]);
return showFeature ? <NewFeature /> : <LegacyFeature />;
}
Naming
// Good
'new-checkout-flow'
'ai-assistant-beta'
// Bad
'flag-123'
'test'
Checklist
- Choose server or client-side based on requirements
- Use descriptive flag name
- Add TODO comment for cleanup date
- Track conversion events if A/B testing
Full Reference
See .github/instructions/feature-flags.instructions.md for:
- A/B testing with variants
- Gradual rollout strategy
- Debug locally
- Tracking conversion events
Exemples
Consultez les exemples du dépôt source.
Voir la source ↗Historique source
- Date d’indexation
- 2026-01-20
- Mise à jour de l’index
- 2026-01-26
- Branch
- main
Les dates concernent ce répertoire. Consultez le dépôt pour l’historique du code.
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!