Project Structure

im (main Android application module, contains screens and their state management files )
| 
+--- im-analytics (analytics util for Firebase, etc.)
+--- im-api ( Java bindings for backend`s API )
+--- im-common (a set of core utilities/helpers used across the project)
+--- im-common-android-context	(a set of Android platform-specific utilities/helpers used across the project)
+--- im-common-android-graphics	(a set of graphic/animation utilities/helpers used across the project)
+--- im-common-android-lifecycle (a set of utilities to handle app lifecycle used across the project)
+--- im-common-android-ui (a set of ui classes used across the project)
+--- im-db (local database access implementation files)
+--- im-emoji (project-specific implementation of emoji library)
+--- im-log (debug logging implementation)
+--- im-model (project domain layer)
+--- im-pictures (imlementation of pictures handling used across the project modules)
+--- im-sdk (provides interfaces to core classes of data layer)
+--- im-sdk-auth (authorization implementation classes of data layer)
+--- im-sdk-call (calls engine implementation classes)
+--- im-sdk-call-audioconference (audioconference engine implementation classes (deprecated))
+--- im-sdk-call-broadcasting	(broadcasting engine implementation classes (deprecated))
+--- im-sdk-call-common	(common call-related implementation classes)
+--- im-sdk-call-meeting (meetings core implementation classes)
+--- im-sdk-call-scheduled (scheduled calls core implementation classes)
+--- im-sdk-call-videoconference (videoconference core implementation classes)
+--- im-sdk-common (common code for calls and conferences)
+--- im-sdk-connection (session connection status classes)
+--- im-sdk-draft (conversation messages drafts implementation)
+--- im-sdk-extendedprofile (extended (business) profiles core implementation)
+--- im-sdk-file (uploading/downloading files implementation)
+--- im-sdk-typing (typing status provider implementation)
+--- im-sdk-users (users interaction classes)
+--- im-telecom	implementation (platform telecom service interaction classes)
+--- im-uikit (core ui classes)
+--- im-uikit-call (p2p call ui module classes)
+--- im-uikit-call-audioconference (audioconference ui module classes)
+--- im-uikit-call-broadcasting	(broadcasting ui module classes)
+--- im-uikit-call-common (ui common widgets/fragments/etc. )
+--- im-uikit-call-meeting (meetings ui module classes)
+--- im-uikit-call-scheduled (scheduled calls ui module classes)
+--- im-uikit-call-videoconference (videoconference ui module classes)	i
+--- im-uikit-common (common ui wigets/base classes/state managment for other ui modules)
+--- im-uikit-conversation (conversations ui implementation)
+--- im-webrtc-model (webrtc library/wrappers module)

Last updated