Skip to content

utilities_sdk Free

Device info, package info, biometric utilities with clean architecture patterns.

Version: 2.0.0

Variables

VariableTypeDefaultDescription
appNamestringMyAppApplication name
organizationstringMyCompanyYour organization or company name
domainstringcomYour organization's top-level domain
prefixstringUnique prefix for component naming
includeDeviceInfobooleantrueInclude device information utilities
includePackageInfobooleantrueInclude package information utilities
includeBiometricbooleantrueInclude biometric authentication utilities
isForMonorepobooleantrueWhether this will be part of a monorepo structure
includeGeneratedbooleanfalseWhether to include generated files in version control

Usage

Interactive

bash
archipelago generate utilities_sdk

Non-interactive (CI)

bash
archipelago generate utilities_sdk --config my_config.json

Config Template

json
{
  "@appName": "Application name",
  "appName": "MyApp",
  "@organization": "Your organization or company name",
  "organization": "MyCompany",
  "@domain": "Your organization's top-level domain",
  "domain": "com",
  "@prefix": "Unique prefix for component naming",
  "prefix": "App",
  "@includeDeviceInfo": "Include device information utilities",
  "includeDeviceInfo": true,
  "@includePackageInfo": "Include package information utilities",
  "includePackageInfo": true,
  "@includeBiometric": "Include biometric authentication utilities",
  "includeBiometric": true,
  "@isForMonorepo": "Whether this will be part of a monorepo structure",
  "isForMonorepo": true,
  "@includeGenerated": "Whether to include generated files in version control",
  "includeGenerated": false
}

Generated Structure

Each utility is generated as a separate API/Impl split under utilities/. When isForMonorepo is true, packages are placed under shared/utilities/.

When includeDeviceInfo is true:

utilities/
└── device_info/
    ├── device_info_api/
    │   ├── lib/
    │   │   ├── device_info_api.dart
    │   │   └── src/
    │   │       ├── device_info_util.dart
    │   │       └── supported_biometric.dart
    │   └── pubspec.yaml
    └── device_info_impl/
        ├── lib/
        │   ├── device_info_impl.dart
        │   └── src/
        │       ├── di/
        │       │   ├── injector.dart
        │       │   └── register_module.dart
        │       └── utils/
        │           └── device_info_impl.dart
        ├── build.yaml
        └── pubspec.yaml

When includePackageInfo is true:

utilities/
└── package_info/
    ├── package_info_api/
    │   ├── lib/
    │   │   ├── package_info_api.dart
    │   │   └── src/
    │   │       └── package_info_util.dart
    │   └── pubspec.yaml
    └── package_info_impl/
        ├── lib/
        │   ├── package_info_impl.dart
        │   └── src/
        │       ├── di/
        │       │   ├── injector.dart
        │       │   └── register_module.dart
        │       └── utils/
        │           └── package_info_impl.dart
        ├── build.yaml
        └── pubspec.yaml

Note: The includeBiometric variable exists in brick.yaml but biometric templates are not yet implemented. The variable is reserved for future use.

Built by Banua Coder