explaingit

thebookisclosed/vive

6,976C#Audience · developerComplexity · 3/5Setup · easy

TLDR

A C# library and ready-to-use command-line tool for toggling hidden Windows feature flags, the same internal system Microsoft uses to run A/B experiments and gradually roll out new features to Windows users.

Mindmap

mindmap
  root((ViVe))
    What it does
      Toggle Windows feature flags
      Enable hidden features
      Power user and developer tool
    Components
      ViVe C# library
      ViVeTool CLI app
      FeatureManager class
    Use cases
      Enable preview features
      Persist changes across reboots
      Automate test configs
    Requirements
      Windows 10 build 18963 plus
      .NET runtime
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Enable a hidden experimental Windows 11 feature that Microsoft has not yet rolled out to your device using the ViVeTool command-line app

USE CASE 2

Build a C# utility that reads and modifies Windows feature flag states and makes the changes persist across reboots using FeatureManager

USE CASE 3

Create a script to automate enabling a set of pre-release Windows features on test machines before a team review

Tech stack

C#.NET

Getting it running

Difficulty · easy Time to first run · 5min

Requires Windows 10 build 18963 (version 2004, released 2020) or newer.

In plain English

ViVe is a C# library for interacting with the hidden feature flag system built into Windows 10 and later versions of Windows. Microsoft uses this system internally to run A/B experiments, gradually rolling out new features to subsets of users or keeping features in an off state until they are ready. ViVe exposes the same underlying APIs so that developers and advanced users can turn these hidden features on or off themselves. The repository contains two things. The first is the ViVe library itself, which developers can include in their own C# programs to read and change feature states. It includes a class called FeatureManager that handles the common feature management tasks, including making changes persist across reboots and managing last-known-good state. For lower-level access, the library also provides direct access to the relevant Windows system calls. The second is ViVeTool, a ready-to-use command-line program built on the library. It is aimed at power users who want to enable or disable experimental Windows features without writing any code. A screenshot of the tool's help output is included in the README. The README is brief and does not list specific features or usage examples beyond the screenshot. Compatibility requires Windows 10 build 18963 or newer, which corresponds to Windows 10 version 2004 released in 2020.

Copy-paste prompts

Prompt 1
Using the ViVe C# library's FeatureManager class, write code to enable a Windows feature by its numeric ID and make the change survive a reboot.
Prompt 2
How do I use ViVeTool from the Windows command line to enable a specific hidden feature? Show me the exact command syntax.
Prompt 3
Show me how to list currently active Windows feature configurations using the ViVe library, and how to read the last-known-good state.
Prompt 4
I want to build a small C# app that lets users toggle a list of specific Windows feature IDs on and off via a config file. Show me how to use ViVe's FeatureManager to read, enable, and disable features in bulk.
Open on GitHub → Explain another repo

← thebookisclosed on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.