Flutter is an open-source UI toolkit by Google for building natively compiled apps for mobile (iOS, Android), web, and desktop from a single codebase.

Command Link to heading

Check version Link to heading

flutter --version

Show information about the installed tooling Link to heading

flutter doctor

Create a new project Link to heading

flutter create my_app

Run the app Link to heading

flutter run               # By default runs on connected device/emulator
flutter run -d chrome     # run web
flutter run -d android    # run android
flutter run -d ios        # run ios

Build release Link to heading

flutter build apk        # Android APK
flutter build appbundle  # Android AAB (for Play Store)
flutter build ios        # iOS
flutter build web        # Web app

Analyze code Link to heading

flutter analyze

Test Link to heading

flutter test

Clean build cache Link to heading

flutter clean

Commonly used packages Link to heading

  • Dio - HTTP networking
  • json_serializable - JSON serializaion
  • Riverpod / Provider - State management
  • sqflite - Plugin for SQLite
  • shared_preferences - Plugin for reading and writing simple key-value pairs
  • flutter_secure_storage - to store data in secure storage
  • Hive - a lightweight and buzzing-fast key-value database
  • GoRouter - Declarative routing
  • cached_network_image - A library to load and cache network images
  • flutter_svg - SVG rendering
  • fl_chart - A highly customizable Flutter chart library
  • image_picker - Plugin for picking images from the image library
  • flutter_native_splash - for customizing this native splash screen
  • intl - Localization
  • mobile_scanner - for scanning barcodes and QR codes
  • qr_flutter - for rendering QR code
  • url_launcher - for launching a URL
  • path_provider - for finding commonly used locations on the filesystem
  • package_info_plus - for querying information about the application package
  • file_picker - to use a native file explorer to pick single or multiple absolute file paths
  • camera - for controlling the camera
  • location / geolocator - for getting location
  • sensors - to access the accelerometer, gyroscope, magnetometer and barometer sensors
  • connectivity_plus - for discovering the state of the network (WiFi & mobile/cellular) connectivity
  • permission_handler - provides a cross-platform (iOS, Android) API to request permissions and check their status
  • battery_plus - to access various information about the battery
  • device_info_plus - returns platform-specific device information
  • firebase suite - to integerate Firebase

Open-source projects Link to heading

  • spotube
    • Open source music client! Available for both desktop & mobile!