LinuxCommandLibrary

fvm

Manage Flutter SDK versions

TLDR

Install a version of the Flutter SDK. Use without version for project settings

$ fvm install [version]
copy

Set a specific version of Flutter SDK in a project
$ fvm use [version] [options]
copy

Set a global version of the Flutter SDK
$ fvm global [version]
copy

Delete the FVM cache
$ fvm destroy
copy

Remove a specific version of the Flutter SDK
$ fvm remove [version]
copy

List all installed versions of the Flutter SDK
$ fvm list
copy

List all releases of the Flutter SDK
$ fvm releases
copy

SYNOPSIS

fvm [global options] <command> [<arguments>]

PARAMETERS

-h, --help
    Print this usage information.

--version
    Print the current fvm version.

--verbose
    More output per occurrence (use multiple times for more verbosity).

-c, --color[=true|false]
    Output colorized logs (defaults to on).

--no-color
    Disable colorized output.

--ansi
    Output with ANSI colors (defaults to auto).

DESCRIPTION

FVM (Flutter Version Management) is an open-source CLI tool for effortlessly managing multiple Flutter SDK versions on your machine.

Flutter releases new versions frequently, introducing features, bug fixes, and occasional breaking changes. FVM solves the hassle of switching versions manually by allowing you to:
• Install specific Flutter versions from official channels.
• Activate a version per project via a .fvm folder and config file.
• Run flutter or dart commands proxied through FVM for the active version.
• List available releases, installed versions, and manage aliases.

Ideal for developers working on multiple projects, teams ensuring version consistency, and CI/CD pipelines. It integrates with IDEs like VS Code and Android Studio via plugins. FVM uses Flutter's official GitHub releases or mirrors, caching SDKs locally to save bandwidth.

Post-installation, run fvm doctor to validate setup. Project-level overrides take precedence over global settings, preventing conflicts.

CAVEATS

Requires Dart SDK for installation. Mirror downloads may hit rate limits; use --mirror-url for custom mirrors. Project .fvm config overrides global. Not a Flutter replacement—proxies commands.

INSTALLATION

dart pub global activate fvm
dart pub global activate fvm --path https://pub.dartlang.org (if needed)
fvm doctor to verify.

COMMON USAGE

fvm install stable or 3.24.3
fvm use 3.24.3 --project
fvm flutter create my_app
fvm list / fvm releases

KEY COMMANDS

use: Switch version.
install: Download SDK.
flutter/dart: Proxy run.
global: Set default.

HISTORY

Created by Leo Farias in 2020 as a lightweight Flutter version manager, inspired by Node's nvm. Hosted on GitHub (odinho/fvm), it has gained 5k+ stars, active maintenance, and official Flutter community endorsement.

SEE ALSO

flutter(1), dart(1), nvm(1)

Copied to clipboard