Overview

Installation

To get started, you will need to install MinChat React SDK in your React project.

npm install @minchat/reactnative

The MinChat SDK needs to be initialized with the MINCHAT_API_KEY as a parameter as well as a User object representing the current user logged in. The API Key can be found on the Minchat dashboard.

The SDK is initialized using the MinChatProvider.Import the MinChatProvider at the top of your file.

add to imports section
import { MinChatProvider } from '@minchat/reactnative';

Wrap your app with the MinChatProvider passing in the currentUser and the MINCHAT_API_KEY as props. The API Key can be found on the Minchat dashboard.

<MinChatProvider
        apiKey={MINCHAT_API_KEY}
        user={currentUser}>
                
                {/* your chat app components  */}

</MinChatProvider>

You can view more details about the currentUser parameters here.

Import the useMinChat hook at the top of your file.

add to imports section
import { useMinChat } from '@minchat/reactnative';

You can now access the MinChat SDK object.

const minchat = useMinChat()

Functions

Create User

You should create users in your MinChat application to initiate conversations with. Users are at the core of all conversations. MinChat applications are made up of users who chat in either group chats or one-to-one conversations.

in MinChat, a User is a person that uses your app. Typically, you will have one MinChat User for each user in your own database.

Usually, you would create users based on the data from your database. A User is represented by a JSON object.

const otherUser = await minchat.createUser({ 
                                  username: "example-username", 
                                  name: "Example Name"
                            })
                            

You can view more details about the user parameters here.

note: createUser(...) automatically creates a new user in the system, if a user with the same username already exists then it will reuse that user.

Fetching a user

You can fetch an already existing user using either their username or their id.


const otherUser = await minchat.fetchUser("example-username")

const otherUser = await minchat.fetchUserById("example-id")

Updating a user

You can update an existing user's information


const updatedUser = await minchat.updateUserById("example-user-id",
                              { 
                                  name: "Updated Name"
                              })
                            

You can view more details about the user parameters here.

Delete a user

Delete a user by username

const success = await minchat.deleteUser(otherUser.username)

Or delete a user by user id

const success = await minchat.deleteUserById(otherUser.id)

Start One-to-One Conversation

const chat = minchat.chat(otherUser.username, { metadata })

Start Group Chat

const chat = await minchat.groupChat({
                 name: "Epic Group Chat",
                 memberUsernames: [ otherUser.username , thirdUser.username ],
                 avatar: "exampleavatar.com",
                 metadata: {}
 })

Last updated