Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create a real time chat application based on Laravel, Vuejs, Redis and Laravel-Echo #1

Open
15 tasks
axit-joost opened this issue Jul 16, 2018 · 0 comments

Comments

@axit-joost
Copy link
Owner

axit-joost commented Jul 16, 2018

Create a multi user, real time chat application using Laravel, Redis, Laravel-Echo-Server and Vuejs.

Fork this repo and perform the following tasks:

  • Create a new Laravel application and scaffold the auth
  • Multiple users should be able to register and logon to the application
  • The application must show the chat history, utilizing Redis as a cache
  • The front-end should be styled using a current version of the Bootstrap framework
  • The front-end must use a Vuejs component (that you author yourself) for the displaying of the chat history and the ability to send chat messages
  • The Vuejs component should use Axios to communicate with the Laravel back-end
  • The Laravel back-end should utilize Events and Broadcast to a channel
  • Broadcasting should leverage Redis
  • Laravel-Echo-Server must observe Redis for applicable broadcasted events
  • Laravel-Echo must utilize Socket.io to connect the front-end to the Laravel-Echo-Server
  • The front-end of participating users must update without having to reload the screen

Additional kudos (for extra credit):

  • When a user is typing the message, the participating users should see an indication that 'User X is typing a message'
  • When a user is logging on, logging off, closing the browser screen or is otherwise leaving the session, should cause the screens being updated that the user has left the chat.
  • Instead of using Laravels routes/web.php for endpoints, the application should use Laravel-Passport and be able to consume its API that is defined using routes/api.php
  • Use Vuex state management library between the various components in a sane way.

Please document your code and update the README with instructions on how to get the app running.

Create a pull request communicating to us about the body of work that has been performed. Make sure you reference this issue to be automatically closed on merge.

Note: Please do not rely on tutorials or copy-paste from existing solutions. The goal of this programming exercise is for us to see your solution, not someone else's!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant