Flexible for Flox is an unofficial third-party plugin that integrates Flox reproducible, cross-platform development environments directly into JetBrains IDEs. Flox itself provides reproducible development environments powered by Nix without requiring users to learn Nix, solving the "works on my machine" problem. The plugin extends this capability by allowing developers to manage their Flox environments entirely within IntelliJ-based editors.
The plugin offers visual package management, enabling users to browse, install, and remove packages without using the command line. It includes a generations view that displays environment history and allows rollbacks when issues occur. Users can sync environments with FloxHub directly from the IDE, edit manifests with schema awareness, and activate environments in the terminal with one click. A services panel manages long-running processes, and the plugin supports cross-OS installation on macOS, Linux, and WSL2 on Windows.
The plugin works by embedding Flox management capabilities into the JetBrains IDE interface, eliminating the need to switch between the editor and terminal for environment tasks. It provides a visual interface for Flox operations that would typically require command-line interaction, making environment management more accessible to developers who prefer GUI tools.
Benefits include streamlined workflow by keeping all Flox operations within the IDE, reduced context switching, and easier environment management for developers less comfortable with CLI tools. The plugin supports education users and open-source projects with free versions, making it accessible to a broader developer community.
Target users are developers using JetBrains IDEs (IntelliJ, PyCharm, WebStorm, GoLand, RubyMine, CLion) who work with Flox environments and prefer integrated development workflows. The plugin is particularly valuable for teams requiring reproducible development environments across different platforms and developers who want visual environment management tools.
Key Features
- •Visual package management interface allows browsing, installing, and removing packages without CLI commands directly within JetBrains IDEs.
- •Generations view displays complete environment history and enables instant rollback to previous states when something breaks in the development environment.
- •FloxHub synchronization enables pushing and pulling environments without leaving the IDE, maintaining consistency across team members and machines.