Skip to content

Latest commit

Β 

History

History
106 lines (81 loc) Β· 2.57 KB

File metadata and controls

106 lines (81 loc) Β· 2.57 KB

Flutter

A modern Flutter-based mobile application utilizing the latest mobile development technologies and tools for building responsive cross-platform applications.

πŸ“‹ Prerequisites

  • Flutter SDK (^3.29.2)
  • Dart SDK
  • Android Studio / VS Code with Flutter extensions
  • Android SDK / Xcode (for iOS development)

πŸ› οΈ Installation

  1. Install dependencies:
flutter pub get
  1. Run the application:
flutter run

πŸ“ Project Structure

flutter_app/
β”œβ”€β”€ android/            # Android-specific configuration
β”œβ”€β”€ ios/                # iOS-specific configuration
β”œβ”€β”€ lib/
β”‚   β”œβ”€β”€ core/           # Core utilities and services
β”‚   β”‚   └── utils/      # Utility classes
β”‚   β”œβ”€β”€ presentation/   # UI screens and widgets
β”‚   β”‚   └── splash_screen/ # Splash screen implementation
β”‚   β”œβ”€β”€ routes/         # Application routing
β”‚   β”œβ”€β”€ theme/          # Theme configuration
β”‚   β”œβ”€β”€ widgets/        # Reusable UI components
β”‚   └── main.dart       # Application entry point
β”œβ”€β”€ assets/             # Static assets (images, fonts, etc.)
β”œβ”€β”€ pubspec.yaml        # Project dependencies and configuration
└── README.md           # Project documentation

🧩 Adding Routes

To add new routes to the application, update the lib/routes/app_routes.dart file:

import 'package:flutter/material.dart';
import 'package:package_name/presentation/home_screen/home_screen.dart';

class AppRoutes {
  static const String initial = '/';
  static const String home = '/home';

  static Map<String, WidgetBuilder> routes = {
    initial: (context) => const SplashScreen(),
    home: (context) => const HomeScreen(),
    // Add more routes as needed
  }
}

🎨 Theming

This project includes a comprehensive theming system with both light and dark themes:

// Access the current theme
ThemeData theme = Theme.of(context);

// Use theme colors
Color primaryColor = theme.colorScheme.primary;

The theme configuration includes:

  • Color schemes for light and dark modes
  • Typography styles
  • Button themes
  • Input decoration themes
  • Card and dialog themes

πŸ“± Responsive Design

The app is built with responsive design using the Sizer package:

// Example of responsive sizing
Container(
  width: 50.w, // 50% of screen width
  height: 20.h, // 20% of screen height
  child: Text('Responsive Container'),
)

πŸ“¦ Deployment

Build the application for production:

# For Android
flutter build apk --release

# For iOS
flutter build ios --release