famon_core 1.4.0 copy "famon_core: ^1.4.0" to clipboard
famon_core: ^1.4.0 copied to clipboard

Core library for Firebase Analytics event parsing, formatting, and persistence. Powers the famon CLI.

famon_core #

pub package License: MIT style: very_good_analysis

Core library for Firebase Analytics event parsing, formatting, and persistence. Powers the famon CLI and is reusable in other Dart and Flutter applications (for example a future GUI client).

What's included #

  • Domain entities — AnalyticsEvent, EventMetadata, MonitoringSession
  • Log parsers — LogParserService (Android logcat), IosLogParserService (iOS Simulator and physical device logs)
  • Event formatting — EventFormatterService for human-readable output
  • Persistence — Isar-backed repositories for events, metadata, and exports
  • Filtering and caching — EventFilterService, EventCacheService
  • Use cases — MonitorEventsUseCase, ExportDataUseCase, ImportDataUseCase, AddManualParametersUseCase, DataExportImportUseCase
  • DI module — FamonCorePackageModule for injectable integration

Installation #

dart pub add famon_core

Or add to your pubspec.yaml:

dependencies:
  famon_core: ^1.4.0

Usage #

import 'package:famon_core/famon_core.dart';

void main() {
  final parser = LogParserService();
  final event = parser.parse(
    '11-15 10:23:45.123 12345 12345 V FA      : Logging event: '
    'origin=app,name=screen_view,params=Bundle[{firebase_screen_class=HomeScreen}]',
  );

  if (event != null) {
    print('Event: ${event.eventName}');
    print('Params: ${event.parameters}');
  }
}

For full CLI usage, see famon.

Architecture #

famon_core follows a layered domain-driven design. The main top-level groupings under lib/src/:

lib/src/
├── constants.dart      # Shared constants
├── core/
│   ├── domain/         # Entities, value objects, repository interfaces
│   ├── application/    # Use cases, application services
│   └── infrastructure/ # Isar implementations
├── core_injection.dart # injectable module entry point
├── exceptions/         # Domain-specific exceptions
├── models/             # Plain data classes
├── services/           # Parsers, formatters, caches
├── shared/             # Cross-cutting utilities
└── utils/              # Pure helpers (filtering, etc.)

The CLI in famon is a thin frontend; all business logic lives here.

Cross-platform parity #

Android and iOS log parsers must produce identical AnalyticsEvent output for the same logical event. Bug fixes and feature additions ship across all platforms simultaneously. See CLAUDE.md in the repository for details.

License #

MIT — see LICENSE.

0
likes
0
points
115
downloads

Publisher

verified publishermikezamayias.com

Weekly Downloads

Core library for Firebase Analytics event parsing, formatting, and persistence. Powers the famon CLI.

Repository (GitHub)
View/report issues

Topics

#firebase #analytics #cli #monitoring

License

unknown (license)

Dependencies

equatable, get_it, injectable, isar, mason_logger, path, process, yaml

More

Packages that depend on famon_core