Coder Social home page Coder Social logo

nextjs-cometchat's Introduction

CometChat



CometChat React UI Kit



Main



CometChat React UI Kit is a collection of custom UI Components designed to build text chat and voice/video calling features in your application.

The UI Kit is developed to keep developers in mind and aims to reduce development efforts significantly.


Features

  • Private(1-1) & Group Conversations
  • Voice & video calling & conferencing
  • Rich Media Attachments
  • Typing Indicators
  • Text, Media and Custom messages
  • Read receipts
  • Online Presence Indicators
  • Message History
  • Users & Friends List
  • Search by users and groups
  • Groups List
  • Conversations List
  • Threaded Conversations

Extensions

Thumbnail Generation | Link Preview | Rich Media Preview | Smart Reply| Emojis | Polls | Reactions | Stickers


Prerequisites

Before you begin, ensure you have met the following requirements:


Installing React UI Kit

1. Setup ๐Ÿ”ง

i. Register on CometChat ๐Ÿ”ง

To install React UI Kit, you need to first register on CometChat Dashboard. Click here to sign up

ii. Get your Application Keys ๐Ÿ”‘

  • Create a new app
  • Head over to the Quick Start or API & Auth Keys section and note the App ID, Auth Key, and Region.

iii. Add the CometChat Dependency

  npm install @cometchat-pro/chat@2.4.0 --save

2. Configure CometChat inside your app

i. Import CometChat SDK

  import { CometChat } from "@cometchat-pro/chat";

ii. Initialize CometChat ๐ŸŒŸ

The init() method initializes the settings required for CometChat. We suggest calling the init() method on app startup, preferably in the onCreate() method of the Application class.

const appID = "APP_ID";
const region = "REGION";
const appSetting = new CometChat.AppSettingsBuilder().subscribePresenceForAllUsers().setRegion(region).build();
CometChat.init(appID, appSetting).then(
  () => {
    console.log("Initialization completed successfully");
    // You can now call login function.
  },
  error => {
    console.log("Initialization failed with error:", error);
    // Check the reason for error and take appropriate action.
  }
);

Note:

  • Replace APP_ID and REGION with your CometChat App ID and Region in the above code.

iii. Login your user ๐Ÿ‘ค

This method takes UID and Auth Key as input parameters and returns the User object containing all the information of the logged-in user..

const authKey = "AUTH_KEY";
const uid = "SUPERHERO1";

CometChat.login(uid, authKey).then(
  user => {
    console.log("Login Successful:", { user });    
  },
  error => {
    console.log("Login failed with exception:", { error });    
  }
);

Note:

  • Replace AUTH_KEY with your CometChat Auth Key in the above code.

  • We have setup 5 users for testing having UIDs: SUPERHERO1, SUPERHERO2, SUPERHERO3,SUPERHERO4 and SUPERHERO5.


3. Add UI Kit to your project

  • Clone this repository git clone https://github.com/cometchat-pro/cometchat-pro-react-ui-kit.git
  • Copy the cloned repository to your source folder

  • Copy all the dependencies from package.json into your project's package.json and install them


4. Launch CometChat

Using the CometChatUI component, you can launch a fully functional chat application. In this component all the UI Screens and UI Components are interlinked and work together to launch a fully functional chat on your website/application.

Usage

  • Import CometChatUI component
  • Embed CometChatUI component in container and provide an appropriate width and height to the container
  import { CometChatUI } from "./CometChatWorkspace/src";

  class App extends React.Component {

    render() {

      return (
        <div style={{width: '800px', height:'800px' }}>
          <CometChatUI />
        </div>
      )
    }
  }

Checkout our sample app

Visit our React sample app repo to run the React sample app.


Troubleshooting

  • To read the full documentation on UI Kit integration visit our Documentation.

  • Facing any issues while integrating or installing the UI Kit please connect with us via real time support present in CometChat Dashboard.


Contributors

Thanks to the following people who have contributed to this project:

๐Ÿ‘จโ€๐Ÿ’ป @priyadarshininadar
๐Ÿ‘จโ€๐Ÿ’ป @ajaygajra
๐Ÿ‘จโ€๐Ÿ’ป @prathamesh-majgaonkar
๐Ÿ‘จโ€๐Ÿ’ป @mayur-bhandari


Contact ๐Ÿ“ซ

Contact us via real time support present in CometChat Dashboard.


License


This project uses the following license.

nextjs-cometchat's People

Contributors

ammezie avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.