Dart Refactoring Pro
Dart Refactoring Pro is an IntelliJ plugin that brings powerful, automated refactorings to Dart codebases.
The plugin is currently in alpha. Get it from the JetBrains Marketplace:
To find the plugin from inside the IDE, add the official JetBrains Marketplace Alpha channel to your plugin repositories: Settings → Plugins → ⚙️ → Manage Plugin Repositories → + Then paste:
https://plugins.jetbrains.com/plugins/alpha/list
Refactorings
Introduce Parameter
Keyboard shortcut: ⌘ ⌥ P (macOS) / Ctrl Alt P (Windows/Linux)
Extract an expression into a new parameter, replacing the selected expression with the parameter reference and updating all call sites.
- Works with a caret position or a selected expression range
- Supports enums and static members
- Includes pre-flight validation before making any changes
Move Top-Level Declaration
Keyboard shortcut: F6
Move any top-level declaration (class, function, variable, typedef…) to another file in the same package. The plugin automatically:
- Updates all
importstatements across the codebase - Adds missing imports to files that reference the moved symbol
- Removes imports that are no longer needed
- Sorts all affected import blocks
- Supports moving multiple declarations at once
Delete Parameter
Keyboard shortcut: ⌘ Delete (macOS) / Ctrl Delete (Windows/Linux)
Remove a parameter from a function or method signature and eliminate the corresponding argument at every call site throughout the project.
Introduce Field
Introduce a new field from a selected expression or constructor parameter, initializing it in the constructor and replacing usages throughout the class.
Extract Superclass
Extract a new superclass from an existing class, moving selected members up into the new parent class.
Inline Superclass
Inline a superclass back into its subclass, merging all members down and removing the superclass.
Paste with Imports
When you copy a Dart class or function from one file and paste it into another, the plugin automatically adds any import statements that the pasted code needs — no manual import hunting required.
- Detects which imports in the source file are relevant to the copied text
- Adds only the missing imports to the destination file
- Triggered by the standard Paste shortcut — no extra steps needed