Flutter Meon IPO

A Flutter package for integrating Meon IPO WebView functionality into your mobile applications.

Features

  • 🚀 Easy integration with Flutter apps
  • 🎨 Customizable base URL and styling
  • 📱 Built-in loading indicator
  • 🔧 Full callback support
  • âš¡ Optimized WebView performance
  • 📊 Progress tracking

Installation

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

dependencies:
  flutter_meon_ipo: ^1.0.0

Then run:

flutter pub get

Platform Configuration

Android

Add internet permission to your android/app/src/main/AndroidManifest.xml:

<uses-permission android:name="android.permission.INTERNET"/>

iOS

Add the following to your ios/Runner/Info.plist:

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

For iOS 14+, you may also need to add:

<key>io.flutter.embedded_views_preview</key>
<true/>

Usage

Basic Example

import 'package:flutter/material.dart';
import 'package:flutter_meon_ipo/flutter_meon_ipo.dart';

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text('Meon IPO'),
        ),
        body: MeonIPO(
          companyName: 'ndaindia',
        ),
      ),
    );
  }
}

With Callbacks

MeonIPO(
  companyName: 'ndaindia',
  onLoadStart: () {
    print('Loading started');
  },
  onLoadEnd: () {
    print('Loading finished');
  },
  onError: (error) {
    print('Error: ${error.description}');
  },
  onProgress: (progress) {
    print('Loading progress: $progress%');
  },
)

Custom Base URL

MeonIPO(
  companyName: 'ndaindia',
  baseUrl: 'https://ipo.meon.co.in',
)

Custom Loading Widget

MeonIPO(
  companyName: 'ndaindia',
  loadingWidget: Center(
    child: Column(
      mainAxisAlignment: MainAxisAlignment.center,
      children: [
        CircularProgressIndicator(),
        SizedBox(height: 16),
        Text('Loading IPO Information...'),
      ],
    ),
  ),
)

Custom Background Color

MeonIPO(
  companyName: 'ndaindia',
  backgroundColor: Colors.grey[100],
)

Parameters

Parameter Type Required Default Description
companyName String Yes - Company name to load IPO information for (e.g., "ndaindia")
baseUrl String No "https://ipo.meon.co.in" Base URL for the Meon IPO service
onLoadStart VoidCallback? No - Callback when WebView starts loading
onLoadEnd VoidCallback? No - Callback when WebView finishes loading
onError Function(WebResourceError)? No - Callback when WebView encounters an error
onProgress Function(int)? No - Callback for loading progress (0-100)
loadingWidget Widget? No - Custom loading widget to display while the page loads
backgroundColor Color? No Colors.white Background color for the WebView

Requirements

  • Flutter SDK: >=3.3.0
  • Dart SDK: ^3.5.0
  • webview_flutter: ^4.11.3

Example App

See the example directory for a complete sample app.

License

MIT

Author

Meon IPO

Support

For issues, questions, or feature requests: Email: support@meon.co.in

Changelog

See CHANGELOG.md for a list of changes.

Libraries

flutter_meon_ipo