cholai_sdk 0.0.1 copy "cholai_sdk: ^0.0.1" to clipboard
cholai_sdk: ^0.0.1 copied to clipboard

A Flutter SDK that provides socket-based chat, color theming, and user/session handling utilities.

🧠 CholAi SDK for Flutter #

A plug-and-play SDK for real-time chat and AI integration, built for fast onboarding into your Flutter app.


🚀 Installation #

Add the package to your pubspec.yaml:

dependencies:
  cholai_sdk: ^<latest_version>
Then run:

flutter pub get
⚙️ Initialization

Before using any chat features, initialize the SDK:

```dart
void main() {
  WidgetsFlutterBinding.ensureInitialized();
  CholAiSdk.preInit(); // Optional: For preparing resources
  runApp(const MyApp());
}

Then call CholAiSdk.initialize once inside your app:

```dart
@override
void initState() {
  super.initState();
  CholAiSdk.initialize(
    userId: 'your-user-id',
    fcmToken: 'your-device-fcm-token',
    baseUrl: 'https://your-server.com', // Replace with your backend URL
  );
}

💬 Open Chat View

Use this to launch the chat detail view between two users:

```dart
showModalBottomSheet(
  context: context,
  builder: (context) => CholAiSdk.getChatDetailView(
    senderIdParam: 'sender-id',
    senderNameParam: 'Sender Name',
    senderProfileImageParam: '',

    receiverIdParam: 'receiver-id',
    receiverNameParam: 'Receiver Name',
    receiverProfileImageParam: '',
    receiverPhoneNumberParam: '1234567890',
    receiverCountryCodeParam: '+91',
  ),
);

📱 Example

Here is a minimal working app using the SDK:

```dart
import 'package:flutter/material.dart';
import 'package:cholai_sdk/cholai_sdk.dart';

void main() {
  WidgetsFlutterBinding.ensureInitialized();
  CholAiSdk.preInit();
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'CholAi SDK Demo',
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
        useMaterial3: true,
      ),
      home: const HomePage(),
    );
  }
}

class HomePage extends StatefulWidget {
  const HomePage({super.key});

  @override
  State<HomePage> createState() => _HomePageState();
}

class _HomePageState extends State<HomePage> {
  @override
  void initState() {
    super.initState();
    CholAiSdk.initialize(
      userId: '685ed9d4ba12bfdac897d686',
      fcmToken: 'fcmToken',
      baseUrl: 'https://cholai-node.onrender.com',
    );
  }

  void _openChat() {
    showModalBottomSheet(
      context: context,
      builder: (context) => CholAiSdk.getChatDetailView(
        senderIdParam: '685ed9d4ba12bfdac897d686',
        senderNameParam: 'Sabari',
        senderProfileImageParam: '',
        receiverIdParam: '685eddd4ba12bfdac897d687',
        receiverNameParam: 'Dhina',
        receiverProfileImageParam: '',
        receiverPhoneNumberParam: '9842776133',
        receiverCountryCodeParam: '+91',
      ),
    );
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: const Text('CholAi Chat Example')),
      body: const Center(child: Text('Tap the button to start a chat')),
      floatingActionButton: FloatingActionButton(
        onPressed: _openChat,
        child: const Icon(Icons.chat),
        tooltip: 'Start Chat',
      ),
    );
  }
}

📦 Features

🔒 Secure chat communication
👤 User-to-user conversation view
🔔 FCM token integration
🎨 Fully customizable UI wrapper (upcoming)
📣 Coming Soon

Message history with pagination
AI reply suggestions
In-app voice calling support
🧑‍💻 Maintained By

CholAi Team – Bringing AI-driven messaging into your app experience.
0
likes
100
points
28
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

A Flutter SDK that provides socket-based chat, color theming, and user/session handling utilities.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

cached_network_image, flutter, flutter_screenutil, get, get_storage, hugeicons, intl, loading_animation_widget, path, shimmer, socket_io_client

More

Packages that depend on cholai_sdk