Giter Club home page Giter Club logo

quick-chat's Introduction

Quick Chat for iOS

License Swift 5 Twitter: @aslanyanhaik

Quick Chat for iOS is a real time chat app written in Swift 5 using Firebase.

Quick Chat allows to send and receive text messages, photos & location.

Screenshot of Quick Chat for iOS

Getting Started

To get started and run the app, you need to follow these simple steps:

  1. Open the QuickChat workspace in Xcode.
  2. Change the Bundle Identifier to match your domain.
  3. Go to Firebase and create new project.
  4. Select "Add Firebase to your iOS app" option, type the bundle Identifier & click continue.
  5. Download "GoogleService-Info.plist" file and add to the project. Make sure file name is "GoogleService-Info.plist".
  6. Go to Firebase Console, select your project, choose "Authentication" from left menu, select "SIGN-IN METHOD" and enable "Email/Password" option.
  7. Open the terminal, navigate to project folder and run "pod install".
  8. You're all set! Run Quick Chat on your iPhone or the iOS Simulator.

Compatibility

This project is written in Swift 5.0 and requires Xcode 11.0 to build and run.

Quick Chat for iOS is compatible with iOS 13.0+.

Author

License

Copyright 2019 Haik Aslanyan.

Licensed under MIT License: https://opensource.org/licenses/MIT

quick-chat's People

Contributors

aslanyanhaik avatar ivanyurchenko avatar rrulin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

quick-chat's Issues

problem with loading message

This app work well but i found a problem that when you open chat screen and the app load old message, because you use the observer for adding child so it will make the tableview update for each message. So when the conversation have about 1000 message or more (its possible) it call the update function 1000 times, its bad, the app may freeze or crash. Hope you can improve it.

NOTIFICATION & AUDIO MESSAGE & DELETE

Hi, meanwhile great work !!!
I would like to know how to implement 3 things ...

  1. Notify when a message arrives;
  2. Send audio message;
  3. Delete the conversation.

Always if you can ...
I follow you and look forward to the next version ... possible release date?

Blocking

I think you should add the ability to block someone

Using this chat on my own personal server problem

Hello aslanyaik, I love this project so much. It's by far the best chat project on github. But I use a parse heroku server. Heroku server but in the parse language. Is it possible to implement this project with the parse language.

Profile picture not working

Hello. Thanks for this great app but I have one issue. When I want to log in and tap the profile picture button the app crashes. What am I doing wrong?

App is Crashing

I get this "thread 1: EXC_breakpoint code=1 subcode 0x1007951fc"

Stuck on pressing Register

When I enter name, email and password and press Register button the loading circle appear and nothing happens.

iphone 8 plus - 11 2 2018-02-14 12-07-58

is there support for audio and video messages ?

i am looking for chat sdk which will work on android and ios where we can send text message,image,audio and video files with firebase as a back end.
so can we achieve all of this with quick-chat ? if not then what we should do to use quick chat for android also.

App is crashing

Hello Aslan,

Thank you for the amazing app, the app was working fine but it suddenly gave me this error and keep crashing:

objc[1654]: Class PLBuildVersion is implemented in both /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/AssetsLibraryServices.framework/AssetsLibraryServices (0x11a7facc0) and /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/PhotoLibraryServices.framework/PhotoLibraryServices (0x11a6116f0). One of the two will be used. Which one is undefined.
2017-05-09 21:17:50.435 QuickChat[1654] [Firebase/Analytics][I-ACS023007] Firebase Analytics v.3700000 started
2017-05-09 21:17:50.436 QuickChat[1654] [Firebase/Analytics][I-ACS023008] To enable debug logging set the following application argument: -FIRAnalyticsDebugEnabled (see http://goo.gl/RfcP7r)
2017-05-09 21:17:50.442 QuickChat[1654] [Firebase/Analytics][I-ACS003007] Successfully created Firebase Analytics App Delegate Proxy automatically. To disable the proxy, set the flag FirebaseAppDelegateProxyEnabled to NO in the Info.plist
2017-05-09 21:17:50.458 QuickChat[1654] [Firebase/Analytics][I-ACS005000] The AdSupport Framework is not currently linked. Some features will not function properly. Learn more at http://goo.gl/9vSsPb
2017-05-09 21:17:50.486 QuickChat[1654] [Firebase/Analytics][I-ACS023012] Firebase Analytics enabled
ERROR /BuildRoot/Library/Caches/com.apple.xbs/Sources/VectorKit_Sim/VectorKit-1230.34.9.30.27/GeoGL/GeoGL/GLCoreContext.cpp 1763: InfoLog SolidRibbonShader:
ERROR /BuildRoot/Library/Caches/com.apple.xbs/Sources/VectorKit_Sim/VectorKit-1230.34.9.30.27/GeoGL/GeoGL/GLCoreContext.cpp 1764: WARNING: Output of vertex shader 'v_gradient' not read by fragment shader

Any cache for messages?

Seems like everytime the ChatVC is loaded, we call firebase for message content, is that right?

Is there anyway to implement a cache?

Crash on sending message

When you send message the app crashes and gives you

fatal error: unexpectedly found nil while unwrapping an Optional value

problem in setup project

I am new to the Ios developent and
As instructions given in readme file i followed and installed project after updating pods i am getting error in code related to firebase the error is saying that

"FIRAuth is change to Auth and FIRDatabase change to Database"

when i try to change FIRAuth to Auth another errors start coming.
when i was updating the pod file message was showing that Firebase(4.8.2) was 3.10.0
that may have cause this problem.
what would be the possible solution for this problem any suggestion will be helpful.

please update read.me

I am new to firebase, I guess the readme does not cover the things like creating user database in firebase and other things required for the app to be fully functional

still can't work

My friend and I followed all the steps but..... we can register and login, but then nothing. When you want to start a new conversation, "Seems like you are alone in this world". This is the only thing we can see. If you give me your email, I can send you the screen shot. Maybe there are still some big bug...

Thread 1: signal SIGABRT

When i run it it stuck on landing screen and shows error in class AppDelegates, how to fix it?

Thread 1: signal SIGABRT

App is crashing at the beginning

When i download it and try to fix the issues for swift 4, there is no problem with it... but when i try to compile it it crashed at the launch screen... any solution????

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Could not find a storyboard named 'Main' in bundle NSBundle </Users/farrel_wahyudi/Library/Developer/CoreSimulator/Devices/43523E95-2270-48ED-BF8A-85314C84D913/data/Containers/Bundle/Application/78CBD25E-66B1-4897-B91E-5AA59ED0927F/ConnectMe.app> (loaded)'
*** First throw call stack:
(
0 CoreFoundation 0x00000001051631cb __exceptionPreprocess + 171
1 libobjc.A.dylib 0x0000000104ac5f41 objc_exception_throw + 48
2 UIKit 0x00000001065f6b62 +[UIStoryboard storyboardWithName:bundle:] + 672
3 UIKit 0x0000000105cee502 -[UIApplication _loadMainStoryboardFileNamed:bundle:] + 76
4 UIKit 0x0000000105cee9dd -[UIApplication _loadMainInterfaceFile] + 228
5 UIKit 0x0000000105ced112 -[UIApplication _runWithMainScene:transitionContext:completion:] + 1413
6 UIKit 0x00000001060a8c6c __111-[__UICanvasLifecycleMonitor_Compatability _scheduleFirstCommitForScene:transition:firstActivation:completion:]_block_invoke + 924
7 UIKit 0x00000001064763ef +[_UICanvas _enqueuePostSettingUpdateTransactionBlock:] + 153
8 UIKit 0x00000001060a8865 -[__UICanvasLifecycleMonitor_Compatability _scheduleFirstCommitForScene:transition:firstActivation:completion:] + 249
9 UIKit 0x00000001060a90c3 -[__UICanvasLifecycleMonitor_Compatability activateEventsOnly:withContext:completion:] + 668
10 UIKit 0x0000000106a06c11 __82-[_UIApplicationCanvas _transitionLifecycleStateWithTransitionContext:completion:]_block_invoke + 262
11 UIKit 0x0000000106a06aca -[_UIApplicationCanvas _transitionLifecycleStateWithTransitionContext:completion:] + 444
12 UIKit 0x00000001066f4b9c __125-[_UICanvasLifecycleSettingsDiffAction performActionsForCanvas:withUpdatedScene:settingsDiff:fromSettings:transitionContext:]_block_invoke + 420
13 UIKit 0x00000001068efc3e _performActionsWithDelayForTransitionContext + 100
14 UIKit 0x00000001066f4998 -[_UICanvasLifecycleSettingsDiffAction performActionsForCanvas:withUpdatedScene:settingsDiff:fromSettings:transitionContext:] + 231
15 UIKit 0x0000000106475a4c -[_UICanvas scene:didUpdateWithDiff:transitionContext:completion:] + 392
16 UIKit 0x0000000105cebac6 -[UIApplication workspace:didCreateScene:withTransitionContext:completion:] + 523
17 UIKit 0x00000001062b4523 -[UIApplicationSceneClientAgent scene:didInitializeWithEvent:completion:] + 369
18 FrontBoardServices 0x000000010989a158 -[FBSSceneImpl _didCreateWithTransitionContext:completion:] + 338
19 FrontBoardServices 0x00000001098a2c4d __56-[FBSWorkspace client:handleCreateScene:withCompletion:]_block_invoke_2 + 235
20 libdispatch.dylib 0x00000001089d243c _dispatch_client_callout + 8
21 libdispatch.dylib 0x00000001089d7af4 _dispatch_block_invoke_direct + 592
22 FrontBoardServices 0x00000001098ce672 FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK + 24
23 FrontBoardServices 0x00000001098ce328 -[FBSSerialQueue _performNext] + 464
24 FrontBoardServices 0x00000001098ce897 -[FBSSerialQueue _performNextFromRunLoopSource] + 45
25 CoreFoundation 0x00000001051062b1 CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION + 17
26 CoreFoundation 0x00000001051a5d31 __CFRunLoopDoSource0 + 81
27 CoreFoundation 0x00000001050eac19 __CFRunLoopDoSources0 + 185
28 CoreFoundation 0x00000001050ea1ff __CFRunLoopRun + 1279
29 CoreFoundation 0x00000001050e9a89 CFRunLoopRunSpecific + 409
30 GraphicsServices 0x000000010a1c19c6 GSEventRunModal + 62
31 UIKit 0x0000000105ceed30 UIApplicationMain + 159
32 ConnectMe 0x0000000102961e47 main + 55
33 libdyld.dylib 0x0000000108a4ed81 start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException
(lldb)

Can't download users

ERROR /BuildRoot/Library/Caches/com.apple.xbs/Sources/VectorKit_Sim/VectorKit-1230.34.9.30.27/GeoGL/GeoGL/GLCoreContext.cpp 1763: InfoLog SolidRibbonShader:
ERROR /BuildRoot/Library/Caches/com.apple.xbs/Sources/VectorKit_Sim/VectorKit-1230.34.9.30.27/GeoGL/GeoGL/GLCoreContext.cpp 1764: WARNING: Output of vertex shader 'v_gradient' not read by fragment shader

app message "seems like you're alone in this world"

First, Thanks for well made app and I have some issue in this app
I maked two Ids at Firebase console Authentication and signed two devices, but messages pop ups to like "seems like you're alone in this world"
How to launch correctly without this issue

Push Notifications

Are there push notifications coded in the app? I can't seem to get them to work.

Blocking Mechanism

Hello
I really like your app
Can you please help me integrate the blocking mechanism inside this app?
Thank you

Increase Text field height

Hi ,
there any function available to increase the height of text field during user typing the message like growing!

Issue with Quick Chat

Hello. Good program. Just learning swift. I am running Xcode 8.2.1. When I run your program, I get an error - Could not cast value of type 'NSNULL' to "NSDictionary'. Seems to stop in User.swift - Class Func info - let data = snapshot.value as! [String: String].

Have any ideas

Thanks,

Ron

Mod?

Hello,

How could this be modified to show all messages sent to a user instead of just the private messages sent from the current user?

Thank you

Wrong Paramets Error

Hey when I try to register, it shows the wrong paramets warning label everytime.
How to solve this?

Can't see any other users

I am using Xcode9 beta and iOS 11 beta, running the app will be fine.
But after I registered 2 users through my email.The avatar, Name, E-mail Label is empty in the leftBarButtonItem in Nav Controller, I don't know why.Also, the feather icon on the right isn't work.
For example, I logout my user A and login user B, when I click the feather icon it will show my user A by common sense, but it says Seems like you're alone in this world.
It is very strange, but after waiting for short time, it shows my user A.
I think that there will be some problem form my network connecting.
!!!The importing thing is that, even click in the user A, the app crashed when I tried to chat with user A
The report are shown as follows:

Quick Cut -> Model -> User.swift -> (Line 106)downloadAllUsers

let credentials = data["credentials"] as! [String: String]

Thread 1: EXC_BREAKPOINT (code=1, subcode=0x1010e0fe8)
fatal error: unexpectedly found nil while unwrapping an Optional value
2017-09-12 10:54:31.029320+0800 QuickChat[6848:2306995] fatal error: unexpectedly found nil while unwrapping an Optional value

There must be some bugs in the model.HELP Please migrate to the new Xcode version and fix these bugs.Thank you.๐Ÿ˜

DELETE MESSAGE AND USER FROM DATABASE

the app is working fine but i have some kind of advise what if we have 1000 user and i want to contact a specific user? i think every chat app should have the option of delete message

Crash when choose avatar on the real device.

It doesn't crash on simulator (IP8+, IOS 11.2).
But when i try it on device (Ipad Air 2, IOS 11.2), it crashes, when i tap avatar icon on Register screen.

(Sorry about my English).

Swift 4

any updates for swift 4. Thanks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.