Skip to content

jaiswal4sudeep/flutter_essential

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

16 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Flutter Essential Plugin

flutter_essential is a Flutter plugin designed to provide essential utility functions including VPN and internet status monitoring, device information retrieval, content sharing, app launching, and vibration controls β€” all through a single, clean API.

πŸ”§ Features

  • Check VPN and Internet connectivity
  • Retrieve device information like ID and name
  • Access app package info
  • Share content to all or specific apps
  • Launch apps using package name
  • Use advanced vibration features (with patterns, feedback types)
  • Real-time stream updates for VPN and Internet status

πŸš€ Getting Started

1. Import the package

import 'package:flutter_essential/flutter_essential.dart';

πŸ“‘ Connectivity Monitoring

Start/Stop VPN Status Stream

FlutterEssential.startVpnStatusUpdates();
FlutterEssential.vpnStatusStream.listen((isConnected) {
  print('VPN Connected: $isConnected');
});

// To stop:
FlutterEssential.stopVpnStatusUpdates();

Start/Stop Internet Status Stream

FlutterEssential.startInternetStatusUpdates();
FlutterEssential.internetStatusStream.listen((isConnected) {
  print('Internet Connected: $isConnected');
});

// To stop:
FlutterEssential.stopInternetStatusUpdates();

πŸ“± Device Information

final deviceId = await FlutterEssential.getDeviceId();
final deviceName = await FlutterEssential.getDeviceName();
final packageInfo = await FlutterEssential.getPackageInfo();

πŸ“€ Sharing Content

Share to All Apps

await FlutterEssential.shareToAllApps(content: "Hello!");

Share to Specific App

await FlutterEssential.shareToSpecificApp(
  content: "Hello!",
  app: SharingApp.whatsapp, // example
);

πŸš€ Launch App by Package Name

await FlutterEssential.openApp(packageName: "com.example.app");

πŸ“³ Vibration Features

Basic Vibration

await FlutterEssential.vibrate(duration: 100);

Pattern Vibration

await FlutterEssential.vibrateWithPattern(
  pattern: [0, 100, 50, 200],
  repeat: -1,
);

Cancel Vibration

await FlutterEssential.cancelVibration();

Predefined Feedback

await FlutterEssential.lightVibration();
await FlutterEssential.mediumVibration();
await FlutterEssential.heavyVibration();

πŸ“¦ Package Info Structure

class PackageInfo {
  final String appName;
  final String packageName;
  final String version;
  final String buildNumber;

  PackageInfo({
    required this.appName,
    required this.packageName,
    required this.version,
    required this.buildNumber,
  });
}

πŸ›  Platform Integration

Ensure proper method channels are implemented on Android and iOS as needed.


πŸ“ƒ License

MIT License

About

Flutter Essential Toolkit πŸ”₯

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published