A comprehensive VSCode extension for Velo state management - bringing powerful code generation, snippets, and productivity tools to Flutter developers using Velo.
✨ Features
🎯 Code generation commands
New Velo: Generate a complete Velo class with boilerplate code
New State: Create state classes with Equatable support and copyWith methods
New Velo + State: Generate both Velo and State classes together
New Test: Create test files with velo_test integration
🔄 Code actions
Widget wrapping: Wrap selected widgets with:
VeloBuilder<T, S>
VeloListener<T, S>
VeloConsumer<T, S>
Provider<T>
Widget conversion: Convert between Velo widgets:
VeloBuilder ↔ VeloConsumer
Provider → MultiProvider
📝 Rich code snippets
Over 20 intelligent snippets including:
velo-class - Complete Velo class template
velo-state - State class with Equatable and copyWith
velo-builder - VeloBuilder widget template
velo-consumer - VeloConsumer widget template
velo-async - Async method template with loading states
context-read - context.read() snippet
And many more...
🧪 Testing support
Generate mock Velo classes using velo_test
Create comprehensive test suites
Widget test helpers with VeloBuilder setup
🚀 Installation
From VS Code Marketplace
Open VS Code
Go to Extensions (Ctrl+Shift+X)
Search for "Velo"
Click Install
📖 Usage
Commands
Access commands via:
Command Palette (Ctrl+Shift+P): Search for "Velo"
Context Menu: Right-click in Explorer on folders
Quick Actions: Use Ctrl+. on selected code
Code actions
Select any widget or code snippet
Press Ctrl+. (or Cmd+. on Mac)
Choose from available Velo actions:
Wrap with VeloBuilder
Wrap with VeloConsumer
Convert between widget types
Snippets
Start typing any snippet prefix and press Tab:
// Type 'velo-class' and press Tab
class CounterVelo extends Velo<CounterState> {
CounterVelo() : super(const CounterState());
// Add your methods here
}
🔧 Configuration
The extension works out of the box with no configuration required. It automatically:
Detects Dart files and activates
Analyzes your code for existing Velo types
Provides contextual suggestions based on your codebase
📋 Requirements
VS Code 1.74.0 or higher
Flutter/Dart extension
A Flutter project using the Velo package
📊 Comparison with Bloc Extension
Feature
Velo Extension
Bloc Extension
Code Generation
✅
✅
Widget Wrapping
✅
✅
Snippets
✅
✅
Testing Support
✅
✅
State Class Generation
✅
✅
Bundle Size
~200KB
~500KB
Learning Curve
Low
Medium
🐛 Known issues
Large Dart files (>10k lines) may experience slower code actions
Widget detection may not work with complex nested structures