GardenMobile & interfaces

Flutter foundations: installation and project conventions

The second beginner chapter connects toolchain checks, a first application, and consistent source organization.

A first Flutter project needs both the SDK and the native tools for the chosen target. This earlier macOS chapter assumed Java, Android Studio with an emulator, and Xcode for iOS.

Check the toolchain first

The original setup downloaded Flutter, added flutter/bin to PATH, and used flutter doctor --android-licenses during Android preparation. License acceptance is one part of setup, not proof that every target toolchain is working. Use the current Flutter installation guide for the selected platform.

Create the first application

The earlier Android Studio flow selected a Flutter application, supplied a project name and location, confirmed the package name, chose an emulator, and ran the generated application. The screenshots described that IDE version; the sequence matters more than a particular dialog’s appearance.

Use consistent names and imports

The source used UpperCamelCase for types, lowerCamelCase for ordinary identifiers, and lowercase_with_underscores for source files and directories. Its import grouping put Dart libraries before packages and relative imports:

import 'dart:async';
import 'dart:html';
import 'package:bar/bar.dart';
import 'package:foo/foo.dart';
import 'package:my_package/util.dart';
import 'util.dart';

export 'src/error.dart';

The sample imports illustrate ordering, not a list of libraries every mobile application should import.

Keep the structure readable

assets/
	+ fonts/
	+ icons/

lib/
	+ models/remote/
	+ pages/login/
		+ login_bloc.dart
		+ login_screen.dart
	+ provider/
		+ store/
			+ remote/
			+ local/
		+ global.dart

The original tree grouped assets and application source by purpose. It is an example organization, not a requirement to create empty folders. Trailing commas and the formatter keep layout consistent. Effective Dart style is the primary reference for language conventions.

Continue the series

← Back to the garden