sendbird / sendbird-chat-sample-ios

This repository provides feature-level Chat samples with Swift.
https://sendbird.com/docs/chat/v4/ios/overview
MIT License
33 stars 5 forks source link
api-for-chat bard chat-api chat-api-platform chat-platform chat-sdk chatbot-api chatbot-sdk chatgpt communications-platform genai-chatbot genai-chatbot-api genai-chatbot-sdk gpt-powered-chatbot instant-messaging-api llama2 messaging-api messaging-platform messaging-sdk palm2

Sendbird Chat SDK Sample for iOS

Platform Language License: MIT Tuist - Build

This repository provides feature-level Chat samples with Swift.

πŸ”’ Security tip

When a new Sendbird application is created in the dashboard the default security settings are set permissive to simplify running samples and implementing your first code.

Before launching make sure to review the security tab under βš™οΈ Settings -> Security, and set Access token permission to Read Only or Disabled so that unauthenticated users can not login as someone else. And review the Access Control lists. Most apps will want to disable "Allow retrieving user list" as that could expose usage numbers and other information.

πŸš€ Get started

You must use tuist to build these sample apps.

1. Install tuist

curl -Ls https://install.tuist.io | bash

2. Install Dependencies

tuist fetch

3. Generate Xcode project & workspace

tuist generate 

For more details: Tuist Docs

4. Execute sample apps

  1. Execute Samples.xcworkspace.
  2. Select the scheme of the feature you want to test.
  3. Run the scheme.

πŸ— Project structure

.
β”œβ”€β”€ Samples.xcworkspace
β”œβ”€β”€ Modules
β”‚Β Β  └── CommonModule # Common Logic & View
β”œβ”€β”€ Apps
β”‚Β Β  β”œβ”€β”€ BasicGroupChannel
β”‚Β Β  β”œβ”€β”€ BasicOpenChannel
β”‚Β Β  β”œβ”€β”€ GroupChannelFeatureA
β”‚Β Β  β”œβ”€β”€ OpenChannelFeatureA
β”‚   β”œβ”€β”€ ...
β”‚   β”œβ”€β”€ GroupChannelFeatureN
β”‚Β Β  └── OpenChannelFeatureN
└── Tuist

CommonModule

πŸ›  For contributors

Below is an additional explanation for contributors.

πŸ“² How to add new Feature Sample App with tuist

  1. Copy Apps/BasicGroupChannel or Apps/BasicOpenChannel
  2. Paste under Apps folder.
  3. Rename folder name BasicGroupChannel to {FeatureSampleName}
  4. Rename parameter "BasicGroupChannel" to "{FeatureSampleName}" in Apps/{FeatureSampleName}/Project.swift
    let project = Project.app(name: {FeatureSampleName})
  5. Re-generate Xcode project & workspace
    tuist generate

Considerations in real world app