File structure

├── BucketPolicy.txt
├── docker-compose.development.yml
├── docker-compose.environment.yml
├── docker-compose.production.yml
├── messenger-api
│   ├── Dockerfile
│   ├── codegen.yml
│   ├── graphql.schema.json
│   ├── package.json
│   ├── pm2.json
│   ├── src
│   │   ├── config.ts
│   │   ├── directives
│   │   │   ├── AuthDirective.ts
│   │   │   ├── DeprecatedDirective.ts
│   │   │   ├── TrimDirective.ts
│   │   │   └── index.ts
│   │   ├── generated
│   │   │   └── graphql.ts
│   │   ├── models
│   │   │   ├── AccessTokenModel.ts
│   │   │   ├── ChatMemberModel.ts
│   │   │   ├── ChatModel.ts
│   │   │   ├── DeviceTokenModel.ts
│   │   │   ├── MessageModel.ts
│   │   │   └── UserModel.ts
│   │   ├── resolvers
│   │   │   ├── Auth.ts
│   │   │   ├── Contacts.ts
│   │   │   ├── Device.ts
│   │   │   ├── Messages.ts
│   │   │   ├── Uploader.ts
│   │   │   └── User.ts
│   │   ├── scalars
│   │   │   ├── NonEmptyString.ts
│   │   │   ├── PhoneNumber.ts
│   │   │   ├── Timestamp.ts
│   │   │   └── index.ts
│   │   ├── schema.ts
│   │   ├── server.ts
│   │   ├── types.ts
│   │   └── utils
│   │       ├── Notifications.ts
│   │       ├── Redis.ts
│   │       ├── S3Policy.ts
│   │       ├── SocketEmitter.ts
│   │       ├── Twilio.ts
│   │       └── index.ts
│   ├── tsconfig.json
│   ├── tslint.json
│   └── yarn.lock
├── messenger-app
│   ├── App.tsx
│   ├── apollo.config.js
│   ├── app.json
│   ├── assets
│   │   ├── fonts
│   │   │   └── SpaceMono-Regular.ttf
│   │   ├── ic-send-24.png
│   │   ├── ic-send-24@2x.png
│   │   ├── ic-send-24@3x.png
│   │   ├── icon.png
│   │   ├── images
│   │   │   ├── icon.png
│   │   │   ├── robot-dev.png
│   │   │   ├── robot-prod.png
│   │   │   └── splash.png
│   │   ├── sources
│   │   │   └── ic-send.svg
│   │   └── splash.png
│   ├── babel.config.js
│   ├── codegen.yml
│   ├── components
│   │   ├── CircularProgress.tsx
│   │   ├── EmptyText.tsx
│   │   ├── Image.tsx
│   │   ├── Items
│   │   │   ├── DialogItem.tsx
│   │   │   ├── MessageItem.tsx
│   │   │   └── UserItem.tsx
│   │   ├── SearchUsers.tsx
│   │   └── UI
│   │       ├── Button.tsx
│   │       ├── HeaderRightButton.tsx
│   │       ├── IconContainer.tsx
│   │       ├── Input.tsx
│   │       ├── InputUsername.tsx
│   │       ├── ListItem.tsx
│   │       ├── LoaderSpinner.tsx
│   │       ├── PhoneCodeInput.tsx
│   │       ├── PhoneInput.tsx
│   │       ├── Picture.tsx
│   │       ├── PicturePicker.tsx
│   │       ├── Text.tsx
│   │       └── index.ts
│   ├── config.ts
│   ├── constans
│   │   └── index.ts
│   ├── context
│   │   ├── BadgeContext.tsx
│   │   ├── MessengerUploaderContext.tsx
│   │   ├── OnlineUsersContext.tsx
│   │   └── TypingContext.tsx
│   ├── graphql
│   │   ├── cache
│   │   │   └── Messenger.ts
│   │   ├── client.ts
│   │   ├── fragmentTypes.ts
│   │   ├── fragments
│   │   │   ├── MessangerFragments.ts
│   │   │   └── TokenFragment.ts
│   │   ├── generated.ts
│   │   └── queries
│   │       ├── Auth.ts
│   │       ├── Contacts.ts
│   │       ├── Device.ts
│   │       ├── Messages.ts
│   │       ├── Upload.ts
│   │       └── User.ts
│   ├── graphql.schema.json
│   ├── hooks
│   │   ├── useKeyboard.tsx
│   │   ├── usePrevious.ts
│   │   └── useSocket.tsx
│   ├── navigation
│   │   ├── AppNavigator.ts
│   │   └── MainStack.tsx
│   ├── package.json
│   ├── screens
│   │   ├── Auth
│   │   │   ├── ChooseCountryCodeModal.tsx
│   │   │   ├── EnterPhoneCodeScreen.tsx
│   │   │   ├── SignInScreen.tsx
│   │   │   └── SignUpScreen.tsx
│   │   ├── ChangeChatInfoScreen.tsx
│   │   ├── ChangeNameScreen.tsx
│   │   ├── ChangeUsernameScreen.tsx
│   │   ├── ChatMembers.tsx
│   │   ├── ConversationScreen.tsx
│   │   ├── CreateChatScreen.tsx
│   │   ├── DialogsScreen.tsx
│   │   ├── InviteGroupChatScreen.tsx
│   │   ├── NewMessageScreen.tsx
│   │   ├── PhotoViewerScreen.tsx
│   │   └── ProfileScreen.tsx
│   ├── storage
│   │   └── index.tsx
│   ├── styles
│   │   ├── Colors.ts
│   │   ├── Theme.tsx
│   │   └── index.ts
│   ├── translations
│   │   ├── en.ts
│   │   └── index.ts
│   ├── tsconfig.json
│   ├── types.d.ts
│   ├── utils
│   │   ├── CountryCodes.ts
│   │   ├── ImagePicker.ts
│   │   ├── PushNotifications.ts
│   │   ├── SnapFlatList.tsx
│   │   ├── Uploader.ts
│   │   └── index.ts
│   └── yarn.lock
├── messenger-socket
│   ├── Dockerfile
│   ├── package.json
│   ├── pm2.json
│   ├── src
│   │   ├── config.js
│   │   └── server.js
│   └── yarn.lock
└── redis
    ├── Dockerfile
    └── redis.conf

Last updated