Awesome Flutter Snippets is a collection of commonly used Flutter classes and methods. It increases your speed of development by eliminating most of the boilerplate code associated with creating a widget. Widgets such as StreamBuilder
and SingleChildScrollView
can be created by typing the shortcut streamBldr
and singleChildSV
respectively.
- Speeds up development
- Eliminates boilerplate
- Supports complex widgets (Eg: Custom Clipper and Custom Paint)
Shortcut | Expanded | Description |
---|---|---|
statelessW |
Stateless Widget | Creates a Stateless widget |
statefulW |
Stateful Widget | Creates a Stateful widget |
build |
Build Method | Describes the part of the user interface represented by the widget. |
initS |
InitState | Called when this object is inserted into the tree. The framework will call this method exactly once for each State object it creates. |
dis |
Dispose | Called when this object is removed from the tree permanently. The framework calls this method when this State object will never build again. |
reassemble |
Reassemble | Called whenever the application is reassembled during debugging, for example during hot reload. |
didChangeD |
didChangeDependencies | Called when a dependency of this State object changes |
didUpdateW |
didUpdateWidget | Called whenever the widget configuration changes. |
customClipper |
Custom Clipper | Used for creating custom shapes |
customPainter |
Custom Painter | Used for creating custom paint |
listViewB |
ListView.Builder | Creates a scrollable, linear array of widgets that are created on demand.Providing a non-null itemCount improves the ability of the ListView to estimate the maximum scroll extent. |
listViewS |
ListView.Separated | Creates a fixed-length scrollable linear array of list 'items' separated by list item 'separators'. |
gridViewB |
GridView.Builder | Creates a scrollable, 2D array of widgets that are created on demand. Providing a non-null itemCount improves the ability of the GridView to estimate the maximum scroll extent. |
gridViewC |
GridView.Count | Creates a scrollable, 2D array of widgets with a fixed number of tiles in the cross axis. |
gridViewE |
GridView.Extent | Creates a scrollable, 2D array of widgets with tiles that each have a maximum cross-axis extent. |
customScrollV |
Custom ScrollView | Creates a ScrollView that creates custom scroll effects using slivers. If the primary argument is true, the controller must be null. |
streamBldr |
Stream Builder | Creates a new StreamBuilder that builds itself based on the latest snapshot of interaction with the specified stream |
animatedBldr |
Animated Builder | Creates an Animated Builder. The widget specified to child is passed to the builder |
statefulBldr |
Stateful Builder | Creates a widget that both has state and delegates its build to a callback. Useful for rebuilding specific sections of the widget tree. |
orientationBldr |
Orientation Builder | Creates a builder which allows for the orientation of the device to be specified and referenced |
layoutBldr |
Layout Builder | Similar to the Builder widget except that the framework calls the builder function at layout time and provides the parent widget's constraints. |
singleChildSV |
Single Child Scroll View | Creates a scroll view with a single child |
futureBldr |
Future Builder | Creates a Future Builder. This builds itself based on the latest snapshot of interaction with a Future. |
nosm |
No Such Method | This method is invoked when a non-existent method or property is accessed. |
inheritedW |
Inherited Widget | Class used to propagate information down the widget tree. |
mounted |
Mounted | Whether this State object is currently in a tree. |
snk |
Sink | A Sink is the input of a stream. |
strm |
Stream | A source of asynchronous data events. A stream can be of any data type. |
subj |
Subject | A BehaviorSubject is also a broadcast StreamController which returns an Observable rather than a Stream. |
toStr |
To String | Returns a string representation of this object. |
debugP |
Debug Print | Prints a message to the console, which you can access using the flutter tool's logs command (flutter logs). |
importM |
Material Package | Import Material package. |
importC |
Cupertino Package | Import Cupertino package. |
importFT |
flutter_test Package | Import flutter_test package. |
importAL |
App localisation | Allows for the importation of app_localisation following generation. |
mateapp |
Material App | Create a new Material App. |
cupeapp |
Cupertino Package | Create a New Cupertino App. |
tweenAnimationBuilder |
Tween Animation Builder | Widget builder that animates a property of a Widget to a target value whenever the target value changes. |
valueListenableBuilder |
Value Listenable Builder | Given a ValueListenable and a builder which builds widgets from concrete values of T, this class will automatically register itself as a listener of the ValueListenable and call the builder with updated values when the value changes. |
f-group |
Group | Create a group test function. |
f-test |
Test | Create a test function. |
f-testWidgets |
Test Widgets | Create a testWidgets function. |
Vscode: 1.56.0
At this time, there are no known issues. If you discover a bug or would like to see a shortcut added, please create a pull request at our GitHub page.
- Breaking: Change
testWdigets
tof-testWidgets
to better align with function snippets - Support for
group
test functionf-group
- Support for app localisation import
importAL
- Support for Flutter 3
- Migrate to super initialisers
- Not on Flutter 3? The Flutter 2.xx branch is up to date and ready for you :)
- Fixed Lint issue - Added
const
to applicable widgets
- Use createState on statefulW snippet (Thank you @marcossevilla)
- Removed trailing whitespaces (Thank you @leoshusar)
- Make widgets default to Container only (Thank you @Ascenio)
- Support for
Listview.builder
- Support for
GridView.count
- Support for
GridView.extent
- Update all widgets to null safety
- Update engine to
1.56.0
- Add Flutter test import (Thank you @arthurdenner #16)
- Support for unit and widget test functions (Thank you @TNorbury #20)
- Added support for Listview.Separated (Thank you @timilehinjegede #26)
- Fixed inheritedW (Thank you @ianwith #22)
- Support for
BehaviorSubject
(Thanks @sinadarvi #7) - Support for
TweenAnimationBuilder
- Support for
ValueListenableBuilder
- Fixed various bug fixes and typos
- Resolved issue #6
- Removed Stateful and Statless Widget since they are included with DartCode.
- Added Material App.
- Added Cupertino App.
- Changed prefixes to use a keyword associated with the widget/function (in camel case)
- Bug fixes
- Added support for debug print
- Added support for to string
- Added support for importing Cupertino package
- Added support for importing Material package (PR #2)
- Added child logic to Stateless and Stateful widgets snippets (PR #3)
Critical bug fixes: - Adjusted tab stops to improve efficiency and workflow - Removed blank Containers from builders in favor of a tab stop with semi-colon - Added trailing comma at the end of child parameter
- Fixed formatting
- Removed unused tabs
- Corrected spelling errors
Added support for: - Stream - Sink - Inherited Widget - Mounted - NoSuchMethod
Added support for: - Stateful Builder - Orientation Builder - Layout Builder - Single Child Scroll View - Future Builder
Added support for: - Stream Builder - Animated Builder - Custom Scroll View - Listview.Builder
Initial release of Awesome Flutter Snippets