Flutter Performance Monitor

Pub Version License Flutter Dart

Real-time performance monitoring with FPS tracking and memory usage for Flutter applications.

Features

  • 🎯 Real-time FPS tracking - Monitor frame rates in real-time
  • πŸ’Ύ Memory usage monitoring - Track memory consumption patterns
  • πŸ“Š Performance metrics - Comprehensive performance analytics
  • πŸ”„ Live updates - Real-time performance data updates
  • πŸ“± Cross-platform - Works on iOS, Android, Web, and Desktop
  • ⚑ Lightweight - Minimal performance impact on your app

Getting Started

Installation

Add this to your package's pubspec.yaml file:

dependencies:
  flutter_perf_monitor: ^0.0.1

Usage

import 'package:flutter_perf_monitor/flutter_perf_monitor.dart';

void main() {
  // Initialize the performance monitor
  FlutterPerfMonitor.initialize();
  
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: Column(
          children: [
            // Performance monitor widget
            PerfMonitorWidget(),
            
            // Your app content
            Expanded(
              child: YourAppContent(),
            ),
          ],
        ),
      ),
    );
  }
}

API Reference

FlutterPerfMonitor

The main class for performance monitoring.

Methods

  • initialize() - Initialize the performance monitor
  • startMonitoring() - Start performance monitoring
  • stopMonitoring() - Stop performance monitoring
  • getFPS() - Get current FPS value
  • getMemoryUsage() - Get current memory usage

PerfMonitorWidget

A widget that displays performance metrics.

Example

See the example directory for a complete working example.

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

If you encounter any problems or have suggestions, please file an issue at the GitHub repository.

Changelog

See CHANGELOG.md for a list of changes and version history.