Skip to content

Codebase Overview

Karanjot Singh edited this page Jul 13, 2021 · 5 revisions

Codebase Overview

Overview

  1. A bridge has been created to connect the firebase auth & StreamChat SDK

Client

  1. There are three important things to notice that are common to all Flutter application using StreamChat:
  • The Dart API client is initialized with your API Key
  • The current user is set by calling connectUser on the client
  • The client is then passed to the top-level StreamChat widget
  1. The top level StreamChatClient is returned in home_page.dart, StreamChat is an inherited widget and must be the parent of all Chat related widgets, we will cover later how you can leverage the inherited widget APIs to build more advanced customizations to your application.

  2. A channel contains messages and a list of members who are permanently associated with the channel and a list of watchers currently watching the channel.

  3. The ChannelListPage widget retrieves the list of channels based on a custom query and ordering using the ChannelsBloc inherited widget

  4. To add data persistence ChatPersistenceClient is extended and passed as an instance to the StreamChatClient.

  5. To read more, Please refer to the tutorial for steps.

Directory Structure of /lib

  1. A good, structured catalogue of projects and relevant resources proofs design-processes and teamwork, speed-ups designer’s work. It helps new employees to natively understand the catalogue. It also allows separate accesses for security issues.
  2. In order to develop a scalable application that can be extended to ios, web, and desktop using flutter cross-platform, I have maintained a clean directory structure in line with Agile methodologies as follows:

(Self-explanatory / Internal files are not mentioned.)

Coding Style & Conventions

Clone this wiki locally