# DevCycle Docs > DevCycle is a feature flag management and experimentation platform with SDKs for every major language, native OpenFeature providers, a CLI, and an MCP server for AI coding tools. - [DevCycle Docs](https://docs.devcycle.com/index.md) ## Quickstart - [Getting Started](https://docs.devcycle.com/quickstart.md): Getting started with DevCycle is simple. In just minutes, you can integrate DevCycle into your app using an AI assistant, which connects to DevCycle’s MCP server to install an SDK and set up your first feature flag. ## Essentials - [System Architecture](https://docs.devcycle.com/essentials/architecture.md): When building DevCycle, we decided on a couple of core design goals from our experience of building global services and SDKs: - [Feature Hierarchy](https://docs.devcycle.com/essentials/feature-hierarchy.md): In a traditional Feature Flagging platform, there is only one type of entity to worry about: a Feature Flag! In these - [Feature Types](https://docs.devcycle.com/essentials/feature-types.md): Feature Types within the DevCycle dashboard are a way of describing and handling Feature Toggles / Feature Flags in more complex and diverse ways. - [What Makes Us Different](https://docs.devcycle.com/essentials/key-features.md): DevCycle is a comprehensive feature flag management platform with a wide range of capabilities. We believe that modern software development processes require feature flagging in order to be successful. For feature flagging to provide its full value, developers need to embed it into their workflow. So DevCycle is designed for the developer first, but with the whole team in mind. - [DevCycle Overview](https://docs.devcycle.com/essentials/overview.md): DevCycle is a Feature Flag platform built for engineering teams of any size, helping you easily create, rollout, and cleanup Feature Flags without disrupting your workflow. To help teams fit Feature Flagging into their development process we’ve taken a different approach than most. This page is a great starting point to understanding how we think about Feature Flagging and how you can get the most out of DevCycle. ## Platform ### Account Management - [Environments](https://docs.devcycle.com/platform/account-management/environments.md): Environments in DevCycle map to the Environments which traditionally exist within a system's development lifecycle. Every Feature within DevCycle will exist across every Environment in your DevCycle Project, but each Environment manages Features independently. - [Keys](https://docs.devcycle.com/platform/account-management/keys.md): Keys are used to grant access to DevCycle data through the SDK API or Management API. All Environments within a Project have their own set of SDK keys. For more information about Environments, please read here. - [Organizations](https://docs.devcycle.com/platform/account-management/organizations.md): Organizations are the top level of the Account hierarchy within DevCycle, and are where all Users, Projects, and settings are managed. Users within an organization have the same permissions across all projects, and a user may be part of multiple Organizations. - [Projects](https://docs.devcycle.com/platform/account-management/projects.md): Projects are nested within Organizations and contain your Features and Environments (and through them your keys, Variables and Variations). ### Experimentation - [Creating and Managing Metrics](https://docs.devcycle.com/platform/experimentation/creating-and-managing-metrics.md): Metrics are available to all customers on any plan and rely on Custom Events that must be sent to DevCycle. All plans come with an included amount of free events. When exceeded, additional costs will be incurred. To learn more, read about our pricing, or contact us. - [Feature Experimentation](https://docs.devcycle.com/platform/experimentation/feature-experimentation.md): Overview - [How things are calculated](https://docs.devcycle.com/platform/experimentation/how-metrics-are-calculated.md): DevCycle uses two methods to calculate metrics created to evaluate your experiments: - [Tutorial: Funnel Experiment](https://docs.devcycle.com/platform/experimentation/tutorial-funnel-experiment.md): Funnel Experiment ### Extras - [Custom Domains](https://docs.devcycle.com/platform/extras/custom-domains.md): When using client-side SDKs, particularly web client SDKs, there is the potential for ad blockers - [Feature Opt-In](https://docs.devcycle.com/platform/extras/feature-opt-in.md): Feature Opt-In provides the ability to make any Feature released via DevCycle have a self-serve way to enable it for end users. This all happens through a simple iFrame that can be implemented on your website, which is powered by DevCycle. - [Self-Hosted Feature Flags with DevCycle](https://docs.devcycle.com/platform/extras/self-hosting.md): If you are looking for a feature flagging solution there is a chance that you are looking for a solution that is completely self-hosted. Self-hosting is an important feature for many organizations as it provides full control over their infrastructure, typically ensuring enhanced data privacy and compliance, flexibility and control. - [Webhooks](https://docs.devcycle.com/platform/extras/webhooks.md): This topic explains how to create and use Webhooks in DevCycle. ### Feature Flags - [Features](https://docs.devcycle.com/platform/feature-flags/features.md): Features are the main elements that you want to control or experiment with in your application. They can be anything from a new UI element to a backend algorithm. - [Stale Feature Notifications](https://docs.devcycle.com/platform/feature-flags/stale-feature-notifications.md): Stale Feature Notifications are a Business / Enterprise feature. To learn more, read about our pricing. To upgrade your plan, please update your plan on your Billing Information page which can be found in your organization's Settings, or contact Sales. - [Feature Status and Lifecycle Management](https://docs.devcycle.com/platform/feature-flags/status-and-lifecycle.md): In DevCycle, Features have Statuses that indicate their current position in the feature lifecycle. Statuses provide a clear, at-a-glance understanding of where a Feature is in its development, release, and cleanup process. - [Audiences](https://docs.devcycle.com/platform/feature-flags/targeting/audiences.md): This topic explains how to create and manage Audiences via our API or within the DevCycle dashboard. - [Custom Properties](https://docs.devcycle.com/platform/feature-flags/targeting/custom-properties.md): Custom Properties are properties on a user which can be used for Targeting Users for Features. - [EdgeDB and Stored Custom Properties](https://docs.devcycle.com/platform/feature-flags/targeting/edgedb.md): EdgeDB is a lightning-fast, globally replicated edge storage tool that allows you to store information about your users for future use in Targeting Rules. For example, you can set a custom property when a user performs a key action in your application, and then target based on that property in the future without having to continuously provide that data in the SDK. - [Random Variations](https://docs.devcycle.com/platform/feature-flags/targeting/random-variations.md): Serving a Random Variation - [Randomize using a Custom Property](https://docs.devcycle.com/platform/feature-flags/targeting/randomize-using-custom-property.md): DevCycle uses User ID as the primary key for delivering variations, rolling out a feature, and randomizing distribution. However, there are cases in which a User ID is not the primary identifier of the request to DVC, thus making the usage of DevCycle features, specifically Gradual Rollouts, difficult in these scenarios. - [Scheduling & Rollouts](https://docs.devcycle.com/platform/feature-flags/targeting/rollouts.md): Scheduling a Feature - [Targeting Overview](https://docs.devcycle.com/platform/feature-flags/targeting/targeting-overview.md): Targeting rules can be used to grant Features to specific user groups, - [Feature Flag Reach](https://docs.devcycle.com/platform/feature-flags/variables-and-variations/feature-flag-reach.md): When a Feature is running, DevCycle automatically provides a quick way to view how the feature is running across all SDKs or APIs it is being used in by breaking down by variable. This document serves to explain this section in more depth. - [Variable Defaults](https://docs.devcycle.com/platform/feature-flags/variables-and-variations/variable-defaults.md): Variable defaults are the values you provide in code which tell DevCycle SDKs what value to assign to a Variable in - [Variables](https://docs.devcycle.com/platform/feature-flags/variables-and-variations/variables.md): Variables are the elements that can change within a Feature. - [Variations](https://docs.devcycle.com/platform/feature-flags/variables-and-variations/variations.md): Variations are different versions of a Feature. Each Variation can have different values for the Variables associated with the Feature. ### Security and Guardrails - [Approval Workflows](https://docs.devcycle.com/platform/security-and-guardrails/approval-workflows.md): Approval Workflows are an Enterprise feature. To learn more, read about our pricing. To upgrade your plan, please contact your Account Manager or our Sales team. - [Audit Log](https://docs.devcycle.com/platform/security-and-guardrails/audit-log.md): The Audit Log tracks all modifications made to a Feature. DevCycle captures the DevCycle user who made the change, a time stamp, and what was modified on each Feature save. - [Custom Property Schemas](https://docs.devcycle.com/platform/security-and-guardrails/custom-property-schemas.md): Similar to Variable Schemas, Custom Property Schemas allow you to set up a schema and define a list of possible values for a Custom Property, which will appear in a dropdown when setting up Targeting Rules. Labels can be defined for each value to make selections more human-readable and easier to identify. This removes the need to remember valid inputs for a specific Custom Property. - [Feature Obfuscation](https://docs.devcycle.com/platform/security-and-guardrails/feature-obfuscation.md): Feature flags are often used to hide upcoming features before release. Normally, not showing the feature on a UI - [Roles & Permissions](https://docs.devcycle.com/platform/security-and-guardrails/permissions.md): At DevCycle, our permissions model is designed to protect production while supporting secure and scalable team collaboration. We offer flexible, role-based access controls that can be applied both at the Organization and Project level—allowing you to tailor access based on how your teams operate. - [SDK Visibility](https://docs.devcycle.com/platform/security-and-guardrails/sdk-visibility.md): Typically, DevCycle Variables are served to any SDK where the identified user matches the configured set of targeting rules. This behaviour is suitable for most applications. However, there are cases where a project may contain server-side Features that should never have their Variables served to client and/or mobile SDKs. It can become cumbersome and risky to ensure Targeting Rules exclude those SDKs in every server-only Feature. - [Variable Schemas](https://docs.devcycle.com/platform/security-and-guardrails/variable-schemas.md): Variable Schemas is a new DevCycle feature that lets you define allowable values for your Variables when creating Feature Variations. Variable Schemas help developers ensure that team members can easily select allowable inputs for Variable values without being nervous that a certain value might cause an application crash or negatively impact end user experience. ### Testing and QA - [Evaluation Lookup](https://docs.devcycle.com/platform/testing-and-qa/debug-tools/evaluation-lookup.md): The Evaluation Lookup debugging tool lets you view historical Variable Evaluation data for your users. It shows which Features and Variables a user received at a given point in time, along with the reasoning behind that configuration. - [Live Events](https://docs.devcycle.com/platform/testing-and-qa/debug-tools/live-events.md): The Live Events debugging tool lets you track a user's SDK events as they happen in real-time. It helps to quickly verify that your implementation is working correctly and if you're seeing the results that you intended to. - [Point-in-time Simulation](https://docs.devcycle.com/platform/testing-and-qa/debug-tools/point-in-time-simulation.md): The Point-in-time Simulation debugging tool lets you simulate what a user's Features and Variables would have been at a certain point in time. Select a past date to see what configuration the user would have received on that day. - [Web Debugger](https://docs.devcycle.com/platform/testing-and-qa/debug-tools/web-debugger.md): The Web Debugger is an embeddable tool for inspecting and testing DevCycle directly on your site. Authorized users can view active Feature configurations, apply Self-Targeting Overrides, and monitor SDK events in real time—without switching back to the dashboard. - [Self-Targeting](https://docs.devcycle.com/platform/testing-and-qa/self-targeting.md): Self-Targeting is a DevCycle QA & debugging feature that allows you to easily serve yourself different variations of a feature without having to modify targeting rules in each environment. To leverage this feature, you must set up your DevCycle Identity by associating an SDK User ID to your DevCycle user profile. ## SDKs - [SDK Overview](https://docs.devcycle.com/sdk.md): DevCycle has both client-side and server-side SDKs. This page describes the differences between these SDK types. - [Features and Functionality](https://docs.devcycle.com/sdk/features.md): DevCycle strives to ensure that all our APIs and SDKs have identical functionality - [SDK Release Lifecycle](https://docs.devcycle.com/sdk/lifecycle.md): DevCycle supports each SDK version according to the policies outlined below. If an SDK is out of support, we recommend - [Mock Testing with DevCycle](https://docs.devcycle.com/sdk/mock-testing.md): Mock testing allows you to test your application's behavior with specific Feature and Variable configurations without making API calls to DevCycle. This enables faster, more reliable tests that don't depend on external services. ### Client-Side SDKs #### Android - [DevCycle Android SDK](https://docs.devcycle.com/sdk/client-side-sdks/android.md): The DevCycle Android Client SDK! This SDK uses our Client SDK APIs to perform all user segmentation - [Android SDK Getting Started](https://docs.devcycle.com/sdk/client-side-sdks/android/android-gettingstarted.md): Initializing the SDK - [Android SDK Installation](https://docs.devcycle.com/sdk/client-side-sdks/android/android-install.md): Installing the SDK - [OpenFeature Android Provider](https://docs.devcycle.com/sdk/client-side-sdks/android/android-openfeature.md): How to implement the OpenFeature Provider for Android - [Android SDK Usage](https://docs.devcycle.com/sdk/client-side-sdks/android/android-usage.md): Using the SDK #### Angular - [Angular OpenFeature SDK with DevCycle Provider](https://docs.devcycle.com/sdk/client-side-sdks/angular.md): DevCycle supports the OpenFeature Angular SDK. This SDK is a wrapper around the OpenFeature Web SDK that allows you to use OpenFeature flags in your Angular application through the OpenFeature APIs powered by the DevCycle Angular Provider. - [Angular OpenFeature SDK - Getting Started](https://docs.devcycle.com/sdk/client-side-sdks/angular/angular-gettingstarted.md): Initializing the SDK - [Angular OpenFeature SDK - Installation](https://docs.devcycle.com/sdk/client-side-sdks/angular/angular-install.md): Installing the SDK - [Angular OpenFeature SDK - Usage](https://docs.devcycle.com/sdk/client-side-sdks/angular/angular-usage.md): Using the SDK #### Flutter - [DevCycle Flutter Client SDK](https://docs.devcycle.com/sdk/client-side-sdks/flutter.md): The Flutter Client SDK for DevCycle! This SDK uses our Client SDK APIs to perform all user segmentation - [Flutter SDK Getting Started](https://docs.devcycle.com/sdk/client-side-sdks/flutter/flutter-gettingstarted.md): Initializing the SDK - [Flutter SDK Installation](https://docs.devcycle.com/sdk/client-side-sdks/flutter/flutter-install.md): Installing the SDK - [Flutter SDK Usage](https://docs.devcycle.com/sdk/client-side-sdks/flutter/flutter-usage.md): Using the SDK #### iOS - [DevCycle iOS Client SDK](https://docs.devcycle.com/sdk/client-side-sdks/ios.md): This Client SDK for DevCycle provides a universal Swift Framework to use DevCycle within your - [iOS SDK Getting Started](https://docs.devcycle.com/sdk/client-side-sdks/ios/ios-gettingstarted.md): Initializing the SDK - [iOS SDK Installation](https://docs.devcycle.com/sdk/client-side-sdks/ios/ios-install.md): Installing the SDK - [OpenFeature iOS Provider](https://docs.devcycle.com/sdk/client-side-sdks/ios/ios-openfeature.md): How to implement the OpenFeature Provider for iOS - [iOS SDK Usage](https://docs.devcycle.com/sdk/client-side-sdks/ios/ios-usage.md): Using the SDK #### JavaScript - [DevCycle JavaScript Client SDK](https://docs.devcycle.com/sdk/client-side-sdks/javascript.md): The DevCycle JS SDK, like all client SDKs, will retrieve a configuration for the provided User upon initialization. - [Javascript SDK Getting Started](https://docs.devcycle.com/sdk/client-side-sdks/javascript/javascript-gettingstarted.md): Initializing the SDK - [Javascript SDK Installation](https://docs.devcycle.com/sdk/client-side-sdks/javascript/javascript-install.md): Installing the SDK - [OpenFeature Web Provider](https://docs.devcycle.com/sdk/client-side-sdks/javascript/javascript-openfeature.md): How to implement the OpenFeature Web Provider - [Typescript Usage](https://docs.devcycle.com/sdk/client-side-sdks/javascript/javascript-typescript.md): SDK features for Typescript users - [Javascript SDK Usage](https://docs.devcycle.com/sdk/client-side-sdks/javascript/javascript-usage.md): Using the SDK #### Next.js - [DevCycle Next.js SDK](https://docs.devcycle.com/sdk/client-side-sdks/nextjs.md): The DevCycle Next.js SDK lets you easily integrate your Next.js applications with DevCycle. - [Next.js SDK Installation](https://docs.devcycle.com/sdk/client-side-sdks/nextjs/nextjs-install.md): Installing the SDK - [Typescript Usage](https://docs.devcycle.com/sdk/client-side-sdks/nextjs/nextjs-typescript.md): SDK features for Typescript users - [Next.js SDK Usage - App Router](https://docs.devcycle.com/sdk/client-side-sdks/nextjs/nextjs-usage-app.md): Initializing the SDK - [Next.js SDK Usage - Pages Router](https://docs.devcycle.com/sdk/client-side-sdks/nextjs/nextjs-usage-pages.md): Initializing the SDK #### React Native - [DevCycle React Native](https://docs.devcycle.com/sdk/client-side-sdks/react-native.md): The DevCycle React Native SDK lets you easily integrate your React Native web applications with DevCycle. - [Expo SDK Installation](https://docs.devcycle.com/sdk/client-side-sdks/react-native/react-native-expo-install.md): Installing the Expo SDK - [React Native SDK Getting Started](https://docs.devcycle.com/sdk/client-side-sdks/react-native/react-native-gettingstarted.md): Initializing the SDK - [React Native SDK Installation](https://docs.devcycle.com/sdk/client-side-sdks/react-native/react-native-install.md): Installing the SDK - [React Native SDK Usage](https://docs.devcycle.com/sdk/client-side-sdks/react-native/react-native-usage.md): Using the SDK #### React - [DevCycle React SDK](https://docs.devcycle.com/sdk/client-side-sdks/react.md): The DevCycle React SDK lets you easily integrate your React web applications with DevCycle. This SDK is also utilized for React Native - [React SDK Getting Started](https://docs.devcycle.com/sdk/client-side-sdks/react/react-gettingstarted.md): Initializing the SDK - [React SDK Installation](https://docs.devcycle.com/sdk/client-side-sdks/react/react-install.md): Installing the SDK - [OpenFeature React Provider](https://docs.devcycle.com/sdk/client-side-sdks/react/react-openfeature.md): How to implement the OpenFeature Provider - [Typescript Usage](https://docs.devcycle.com/sdk/client-side-sdks/react/react-typescript.md): SDK features for Typescript users - [React SDK Usage](https://docs.devcycle.com/sdk/client-side-sdks/react/react-usage.md): Using the SDK #### Roku - [DevCycle Roku Client SDK](https://docs.devcycle.com/sdk/client-side-sdks/roku.md): The DevCycle Roku Client SDK! This SDK uses our Client SDK APIs to perform all user segmentation and bucketing for the SDK, providing fast response times using our globally distributed edge workers all around the world. - [Roku SDK Getting Started](https://docs.devcycle.com/sdk/client-side-sdks/roku/roku-gettingstarted.md): Initializing the SDK - [Roku SDK Installation](https://docs.devcycle.com/sdk/client-side-sdks/roku/roku-install.md): Installing the SDK - [Roku SDK Usage](https://docs.devcycle.com/sdk/client-side-sdks/roku/roku-usage.md): Using the SDK ### SDK Proxy - [SDK Proxy](https://docs.devcycle.com/sdk/sdk-proxy.md): The SDK Proxy is a service that can be hosted inside your infrastructure to provide a proxy between the DevCycle SDKs - [Installation](https://docs.devcycle.com/sdk/sdk-proxy/installation.md): We provide the proxy in a few formats for usage: - [Usage](https://docs.devcycle.com/sdk/sdk-proxy/usage.md): Running the SDK Proxy ### Server-Side SDKs #### .NET - [DevCycle .NET / C# SDK](https://docs.devcycle.com/sdk/server-side-sdks/dotnet.md): SDK - [.NET / C# SDK Getting Started](https://docs.devcycle.com/sdk/server-side-sdks/dotnet/dotnet-gettingstarted.md): Initializing the SDK - [.NET / C# SDK Installation](https://docs.devcycle.com/sdk/server-side-sdks/dotnet/dotnet-install.md): Installing the SDK - [OpenFeature Provider](https://docs.devcycle.com/sdk/server-side-sdks/dotnet/dotnet-openfeature.md): How to implement the OpenFeature Provider - [.NET / C# SDK Usage](https://docs.devcycle.com/sdk/server-side-sdks/dotnet/dotnet-usage.md): Using the SDK #### Go - [DevCycle Go Server SDK](https://docs.devcycle.com/sdk/server-side-sdks/go.md): Welcome to the DevCycle Go Server SDK. There are two modes for the SDK, - [Go Server SDK Getting Started](https://docs.devcycle.com/sdk/server-side-sdks/go/go-gettingstarted.md): Initializing the SDK - [Go Server SDK Installation](https://docs.devcycle.com/sdk/server-side-sdks/go/go-install.md): Installing the SDK - [OpenFeature Provider](https://docs.devcycle.com/sdk/server-side-sdks/go/go-openfeature.md): How to implement the OpenFeature Provider - [Go Server SDK Usage](https://docs.devcycle.com/sdk/server-side-sdks/go/go-usage.md): Using the SDK #### Java - [DevCycle Java Server SDK](https://docs.devcycle.com/sdk/server-side-sdks/java.md): Welcome to the DevCycle Java Server SDK. There are two modes for the SDK, - [Java Server SDK Getting Started](https://docs.devcycle.com/sdk/server-side-sdks/java/java-gettingstarted.md): Initializing the SDK - [Java Server SDK Installation](https://docs.devcycle.com/sdk/server-side-sdks/java/java-install.md): Installing the SDK - [OpenFeature Provider](https://docs.devcycle.com/sdk/server-side-sdks/java/java-openfeature.md): How to implement the OpenFeature Provider - [Java Server SDK Usage](https://docs.devcycle.com/sdk/server-side-sdks/java/java-usage.md): Using the SDK #### NestJS - [DevCycle NestJS Server SDK](https://docs.devcycle.com/sdk/server-side-sdks/nestjs.md): The NestJS SDK supports Local Bucketing mode by default and performs fast local evaluations of your feature flags. - [NestJS SDK Getting Started](https://docs.devcycle.com/sdk/server-side-sdks/nestjs/nestjs-gettingstarted.md): Initializing the SDK - [NestJS SDK Installation](https://docs.devcycle.com/sdk/server-side-sdks/nestjs/nestjs-install.md): Installing the SDK - [OpenFeature NestJS Provider](https://docs.devcycle.com/sdk/server-side-sdks/nestjs/nestjs-openfeature.md): How to implement the OpenFeature Provider - [Typescript Usage](https://docs.devcycle.com/sdk/server-side-sdks/nestjs/nestjs-typescript.md): SDK features for Typescript users - [NestJS SDK Usage](https://docs.devcycle.com/sdk/server-side-sdks/nestjs/nestjs-usage.md): Using the SDK #### Node.js - [DevCycle Node.js Server SDK](https://docs.devcycle.com/sdk/server-side-sdks/node.md): There are two modes for the SDK, Cloud bucketing (using the Bucketing API) and Local Bucketing. - [Bootstrapping and Server-Side Rendering](https://docs.devcycle.com/sdk/server-side-sdks/node/node-bootstrapping.md): SDK features for bootstrapping a client SDK on the server - [Node.js SDK Getting Started](https://docs.devcycle.com/sdk/server-side-sdks/node/node-gettingstarted.md): Initializing the SDK - [Node.js SDK Installation](https://docs.devcycle.com/sdk/server-side-sdks/node/node-install.md): Installing the SDK - [OpenFeature Provider](https://docs.devcycle.com/sdk/server-side-sdks/node/node-openfeature.md): How to implement the OpenFeature Provider - [Typescript Usage](https://docs.devcycle.com/sdk/server-side-sdks/node/node-typescript.md): SDK features for Typescript users - [Node.js SDK Usage](https://docs.devcycle.com/sdk/server-side-sdks/node/node-usage.md): Using the SDK #### PHP - [DevCycle PHP Server SDK](https://docs.devcycle.com/sdk/server-side-sdks/php.md): Welcome to the DevCycle PHP SDK. The SDK uses Cloud Bucketing through the - [PHP Server SDK Getting Started](https://docs.devcycle.com/sdk/server-side-sdks/php/php-gettingstarted.md): Initializing the SDK - [PHP Server SDK Installation](https://docs.devcycle.com/sdk/server-side-sdks/php/php-install.md): Installing the SDK - [OpenFeature Provider](https://docs.devcycle.com/sdk/server-side-sdks/php/php-openfeature.md): How to implement the OpenFeature Provider - [PHP Server SDK Usage](https://docs.devcycle.com/sdk/server-side-sdks/php/php-usage.md): Using the SDK #### Python - [DevCycle Python Server SDK](https://docs.devcycle.com/sdk/server-side-sdks/python.md): Welcome to the DevCycle Python Server SDK. There are two modes for the SDK, Local Bucketing (using the local bucketing engine) and Cloud bucketing (using the DevCycle Bucketing API). - [Python Server SDK Getting Started](https://docs.devcycle.com/sdk/server-side-sdks/python/python-gettingstarted.md): Initializing the SDK - [Python Server SDK Installation](https://docs.devcycle.com/sdk/server-side-sdks/python/python-install.md): Installing the SDK - [OpenFeature Provider](https://docs.devcycle.com/sdk/server-side-sdks/python/python-openfeature.md): How to implement the OpenFeature Provider - [Python Server SDK Usage](https://docs.devcycle.com/sdk/server-side-sdks/python/python-usage.md): Using the SDK #### Ruby - [DevCycle Ruby Server SDK](https://docs.devcycle.com/sdk/server-side-sdks/ruby.md): Welcome to the DevCycle Ruby SDK. There are two modes for the SDK, - [Ruby Server SDK Getting Started](https://docs.devcycle.com/sdk/server-side-sdks/ruby/ruby-gettingstarted.md): Initializing the SDK - [Ruby Server SDK Installation](https://docs.devcycle.com/sdk/server-side-sdks/ruby/ruby-install.md): Installing the SDK - [OpenFeature Provider](https://docs.devcycle.com/sdk/server-side-sdks/ruby/ruby-openfeature.md): How to implement the OpenFeature Provider - [Ruby Server SDK Usage](https://docs.devcycle.com/sdk/server-side-sdks/ruby/ruby-usage.md): Using the SDK ## Integrations - [Integrations](https://docs.devcycle.com/integrations.md): Welcome to DevCycle Integrations! Here you will find all of the various first party tools made with the - [Dynatrace](https://docs.devcycle.com/integrations/dynatrace.md): The DevCycle Dynatrace integration allows you to correlate Feature Flag changes and Flag evaluations with your Dynatrace instance. This provides visibility into Feature Flag states alongside other service monitoring data, making it easier to investigate and resolve issues. - [DevCycle Feature Flag Importer](https://docs.devcycle.com/integrations/feature-importer.md): DevCycle's Feature Flag Importer is designed to import resources from other Feature Flag providers. The Importer is intended to be run on a single Project and will create or update a Project with the same key containing Environments, Features, and Variables. - [GitHub: Feature Flag Code Usages](https://docs.devcycle.com/integrations/github/feature-usage-action.md): Get the integration on the GitHub Marketplace - [GitHub: Feature Flag Change Insights on Pull Request](https://docs.devcycle.com/integrations/github/pr-insights-action.md): Get the integration on the GitHub Marketplace - [GitLab: Feature Flag Code Usages](https://docs.devcycle.com/integrations/gitlab/feature-usage-action.md): Get the integration here//gitlab.com/devcycle/devcycle-usages-ci-cd - [GitLab: Feature Flag Change Insights on Merge Request](https://docs.devcycle.com/integrations/gitlab/pr-insights-action.md): Get the integration here//gitlab.com/devcycle/devcycle-pr-insights-ci-cd - [Sending DevCycle Data as a Custom Event to Google Analytics 4 (GTM Specific)](https://docs.devcycle.com/integrations/google-analytics-4.md): Transition from Google Optimize - [DevCycle Feature Flag Management for Jira](https://docs.devcycle.com/integrations/jira.md): Setup - [DevCycle Jira Integration Setup](https://docs.devcycle.com/integrations/jira/jira-setup.md): Setup - [OpenFeature](https://docs.devcycle.com/integrations/openfeature.md): OpenFeature is an open standard that provides a vendor-agnostic, community-driven SDKs for Feature Flagging that works natively with DevCycle. DevCycle supports a wide range of OpenFeature Compatible SDKs, all of which have native integrations with OpenFeature. - [OpenTelemetry](https://docs.devcycle.com/integrations/opentelemetry.md): OpenTelemetry is a vendor agnostic, open source standard for collecting telemetry data (metrics, logs, and traces). - [Rollbar](https://docs.devcycle.com/integrations/rollbar.md): Rollbar is a tool used for error logging and real-time performance tracking for your applications. Rollbar provides you with the ability to capture detailed information on errors to help diagnose and resolve issues faster. Enrich your logs further by including DevCycle Feature data into your error logging. - [Integration for Slack](https://docs.devcycle.com/integrations/slack.md): This guide explains how to set up and use the DevCycle App for Slack. - [Snowflake](https://docs.devcycle.com/integrations/snowflake.md): DevCycle's Snowflake Data Sharing integration allows you to gain access to all data that are collected by the DevCycle SDKs for your organization. Data Sharing provides a secure and straightforward approach to sharing data between companies. - [Terraform](https://docs.devcycle.com/integrations/terraform.md): DevCycle Terraform Provider is a Terraform provider that provides a way to manage DevCycle projects, features, variables, variations, and environments. - [Vercel Global Config](https://docs.devcycle.com/integrations/vercel-edge-config.md): The Vercel Global Config integration allows you to automatically sync DevCycle flagging configurations to Vercel Global Config (formerly Edge Config), - [DevCycle VSCode Extension](https://docs.devcycle.com/integrations/vscode-extension.md): Static Badge ## MCP Server - [CLI / MCP Overview](https://docs.devcycle.com/cli-mcp.md): DevCycle Command Line Interface and Model Context Protocol Server - [DevCycle MCP Getting Started](https://docs.devcycle.com/cli-mcp/mcp-getting-started.md): The DevCycle Model Context Protocol (MCP) Server is based on the DevCycle CLI and enables AI coding tools like Claude Code and Cursor, or general-purpose tools like Claude Desktop, to interact directly with your DevCycle projects and make changes on your behalf. - [DevCycle MCP User Guides](https://docs.devcycle.com/cli-mcp/mcp-guides.md): Practical guides for using DevCycle MCP with AI assistants - [Incident Investigation with MCP](https://docs.devcycle.com/cli-mcp/mcp-guides/mcp-incident-investigation.md): DevCycle’s MCP server helps you investigate and resolve incidents more efficiently by providing real-time access to Feature Flag data within the context of your codebase, enhanced with natural language communication through AI. To get started on your own, check out our MCP Getting Started guide for setup instructions and a list of available MCP tools. - [DevCycle MCP Reference](https://docs.devcycle.com/cli-mcp/mcp-reference.md): Complete reference for the DevCycle Model Context Protocol Server ## CLI Guides - [CLI User Guides](https://docs.devcycle.com/cli-guides.md): Learn how to use the DevCycle CLI to perform day to day tasks right from your command line. Visit our Reference Docs to get setup and one of the following guides to get started. - [CLI: Environments](https://docs.devcycle.com/cli-guides/environments.md): Manage - [CLI: Features](https://docs.devcycle.com/cli-guides/features.md): Manage - [CLI: SDK Keys](https://docs.devcycle.com/cli-guides/keys.md): Manage - [CLI: Projects](https://docs.devcycle.com/cli-guides/projects.md): Manage - [CLI: Self Targeting](https://docs.devcycle.com/cli-guides/self-targeting.md): DevCycle Identity - [CLI: Targeting Rules](https://docs.devcycle.com/cli-guides/targeting.md): Manage - [CLI: Variables](https://docs.devcycle.com/cli-guides/variables.md): Manage - [CLI: Variations](https://docs.devcycle.com/cli-guides/variations.md): Manage ## CLI - [DevCycle CLI & MCP Server](https://docs.devcycle.com/cli.md): This repository contains the DevCycle CLI for managing feature flags from the command line, plus an MCP (Model Context Protocol) server that enables AI coding assistants to interact with DevCycle. ## Best Practices - [Best Practices](https://docs.devcycle.com/best-practices.md): In this section of our documentation, you will find some tips and tricks for effectively streamlining your feature management with DevCycle. - [Adopting Feature Flags for CI/CD](https://docs.devcycle.com/best-practices/continuous-deployment.md): Feature flag guidelines that optimize continuous integration and deployment - [Super Segments and Edge Flags Simple API Approach](https://docs.devcycle.com/best-practices/edgedb-and-edge-flags/edge-db-via-api-simple.md): Super segments are collections of users that are targeted by data from any external source. - [Super Segments Integrations via Zapier](https://docs.devcycle.com/best-practices/edgedb-and-edge-flags/import-from-anywhere.md): Importing data from anywhere - [Keeping Track of Feature Flags](https://docs.devcycle.com/best-practices/effectively-organizing-feature-flags.md): Tips for keeping your Feature Flag workspace organized in DevCycle - [Engineering-Led Experiments](https://docs.devcycle.com/best-practices/engineering-led-experiments.md): Experiments engineers can conduct to mitigate risk and optimize their software - [Feature Flag Grouping](https://docs.devcycle.com/best-practices/feature-grouping.md): Manage large amounts of feature flags with DevCycle - [Best Practices for Migrating to DevCycle with OpenFeature](https://docs.devcycle.com/best-practices/migration.md): Best Practices for Migrating to DevCycle with OpenFeature - [Product-Led Experimentation in DevCycle](https://docs.devcycle.com/best-practices/product-led-experimentation.md): How product managers and engineers can collaborate effectively within DevCycle to conduct experiments, optimize software, and enhance user experiences. - [SDK Key Security with GitHub Secret Scanning](https://docs.devcycle.com/best-practices/security/api-keys-secret-scanning.md): Leverage GitHub Secret Scanning to detect compromised keys in your repositories - [Compromised SDK Keys](https://docs.devcycle.com/best-practices/security/compromised-keys.md): How to address compromised SDK keys in your environment - [Azure Functions](https://docs.devcycle.com/best-practices/serverless/azure.md): Azure Functions with DevCycle Feature Flags - [AWS Lambda](https://docs.devcycle.com/best-practices/serverless/lambda.md): AWS Lambda with DevCycle Feature Flags - [Google Cloud Functions](https://docs.devcycle.com/best-practices/serverless/serverless-cloud-functions.md): Google Cloud Functions with DevCycle Feature Flags - [Managing Tech Debt by Cleaning Up Unused Flags](https://docs.devcycle.com/best-practices/tech-debt.md): Practices to help minimize technical debt from feature flags ## Examples - [DevCycle Example Apps](https://docs.devcycle.com/examples.md): Welcome to the Example Apps page, which showcases example applications using the DevCycle SDKs. The goal of this page is to provide developers with a comprehensive collection of example applications that demonstrate how to utilize DevCycle's SDKs with a variety of programming languages and frameworks. ## __docusaurus - [Docusaurus debug panel](https://docs.devcycle.com/__docusaurus/debug.md) - [Docusaurus debug panel](https://docs.devcycle.com/__docusaurus/debug/config.md) - [Docusaurus debug panel](https://docs.devcycle.com/__docusaurus/debug/content.md) - [Docusaurus debug panel](https://docs.devcycle.com/__docusaurus/debug/globalData.md) - [Docusaurus debug panel](https://docs.devcycle.com/__docusaurus/debug/metadata.md) - [Docusaurus debug panel](https://docs.devcycle.com/__docusaurus/debug/registry.md) - [Docusaurus debug panel](https://docs.devcycle.com/__docusaurus/debug/routes.md) ## Optional - [Management API OpenAPI spec](https://api.devcycle.com/openapi.json): Manage projects, features, variables, environments, and targeting - [Bucketing API OpenAPI spec](https://bucketing-api.devcycle.com/openapi.yaml): Evaluate variables and track events for a user, used by Cloud Bucketing SDKs - [DevCycle on GitHub](https://github.com/DevCycleHQ)