chat_text_package 0.0.3 copy "chat_text_package: ^0.0.3" to clipboard
chat_text_package: ^0.0.3 copied to clipboard

A Flutter package for sending text messages, featuring a "scroll to bottom" button and real-time unread message count display.

example/lib/main.dart

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

void main() {
  runApp(const MyApp());
}

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

  @override
  Widget build(BuildContext context) {
    return const MaterialApp(
      debugShowCheckedModeBanner: false,
      home: ChatScreenExample(),
    );
  }
}

class ChatScreenExample extends StatefulWidget {
  const ChatScreenExample({super.key});
  @override
  State<ChatScreenExample> createState() => _ChatScreenExampleState();
}

class _ChatScreenExampleState extends State<ChatScreenExample> {
  List<Message> messages = [
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: true,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: true,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: true,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: true,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: true,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: true,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: true,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: true,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: true,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: true,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
    Message(
        id: 1,
        body: 'messsage',
        fromLoggedUser: false,
        createdAt: '2024-12-11 03:45 PM'),
  ];
  late ScrollController scrollController;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: SafeArea(
          child: Center(
        child: InkWell(
          onTap: () {
            Navigator.push(context, MaterialPageRoute(builder: (context) {
              scrollController = ScrollController();
              return ChatScreen(
                  messages: messages,
                  scrollController: scrollController,
                  otherUserName: 'Mohamed Abd El.Gwad',
                  unreadMsgRealTime: 2,
                  textHint: 'Enter your message',
                  otherUserImage:
                      'https://i1.sndcdn.com/artworks-WLuQqAGQXmbnwKVO-SG8o2Q-t500x500.jpg',
                  onSubmitMessage: (msg) {
                    messages.insert(
                        0,
                        Message(
                            id: 1,
                            body: msg,
                            fromLoggedUser: true,
                            createdAt: '2024-12-11 03:45 PM'));
                    setState(() {});
                  });
            }));
          },
          child: const Text('navigate to chat screen'),
        ),
      )),
    );
  }
}
13
likes
145
points
15
downloads

Publisher

unverified uploader

Weekly Downloads

A Flutter package for sending text messages, featuring a "scroll to bottom" button and real-time unread message count display.

Repository (GitHub)
View/report issues

Documentation

Documentation
API reference

License

MIT (license)

Dependencies

flutter, flutter_bloc

More

Packages that depend on chat_text_package