Challenge Overview
The HiWire Chat application will be a skeleton design of a chat application, similar to Slack or Rocket.chat.
The application will be a single window with scrolling chat and a simulated backend, but all on the client-side.
The client wants this prototype to encompass many rich chat features like:
* Message display, and editing
* Typing indicator
* Custom and regular emoji support
* Video, picture, and document upload, with preview
* User avatar images
* Animations and transitions
* Bold, italics, code formatting, Katex support
* React-Native clients for mobile devices and desktop
Browser requirements
We'll be targeting all modern browsers - IE, Firefox, Safari, and Chrome. If there are problems with supporting a specific browser, please bring this up in the forum right away. Mobile targets will be handled by a future React Native implementation.
React
The implementation will be done in React. Future challenges will also integrate with React-Native and Electron.io for native mobile and desktop clients.
Your solution must be easily deployable and testable on Heroku
UI
We recently implemented a large prototype of a React application called HiWire. For this challenge, we'll reuse the chat part of that UI for the message display. We can tweak this a bit for message input to match the requirements below, but message display should follow the UI as closely as possible.
The converted React Native prototype, as well as the design files, will be available in the forum. Focus on the "Messages" portion of the screens.
Requirements
The requirements for this challenge can be found in these Git tickets:
* https://gitlab.com/hercules-react-chat/react-chat-ui/issues/1
* https://gitlab.com/hercules-react-chat/react-chat-ui/issues/2
* https://gitlab.com/hercules-react-chat/react-chat-ui/issues/3
* https://gitlab.com/hercules-react-chat/react-chat-ui/issues/4
Existing code
Existing code for the app skeleton and general message display has been implemented and will be linked to from the forum. Your submission must be a patch file against the existing code in Git.
Submission
Your submission must include:
* The code meeting the requirements above, in patch file form against commit hash 8e8ba511f3ec0d992484cd6c107343052efde479
* A detailed README.md covering how to build and deploy the application locally, and also how to deploy to Heroku
* Validation information (either a separate doc or in the README.md) for each of the requirements above
* A video showing the emojis being added, along with the appropriate popups for shortcuts and the smile button
The application will be a single window with scrolling chat and a simulated backend, but all on the client-side.
The client wants this prototype to encompass many rich chat features like:
* Message display, and editing
* Typing indicator
* Custom and regular emoji support
* Video, picture, and document upload, with preview
* User avatar images
* Animations and transitions
* Bold, italics, code formatting, Katex support
* React-Native clients for mobile devices and desktop
Browser requirements
We'll be targeting all modern browsers - IE, Firefox, Safari, and Chrome. If there are problems with supporting a specific browser, please bring this up in the forum right away. Mobile targets will be handled by a future React Native implementation.
React
The implementation will be done in React. Future challenges will also integrate with React-Native and Electron.io for native mobile and desktop clients.
Your solution must be easily deployable and testable on Heroku
UI
We recently implemented a large prototype of a React application called HiWire. For this challenge, we'll reuse the chat part of that UI for the message display. We can tweak this a bit for message input to match the requirements below, but message display should follow the UI as closely as possible.
The converted React Native prototype, as well as the design files, will be available in the forum. Focus on the "Messages" portion of the screens.
Requirements
The requirements for this challenge can be found in these Git tickets:
* https://gitlab.com/hercules-react-chat/react-chat-ui/issues/1
* https://gitlab.com/hercules-react-chat/react-chat-ui/issues/2
* https://gitlab.com/hercules-react-chat/react-chat-ui/issues/3
* https://gitlab.com/hercules-react-chat/react-chat-ui/issues/4
Existing code
Existing code for the app skeleton and general message display has been implemented and will be linked to from the forum. Your submission must be a patch file against the existing code in Git.
Submission
Your submission must include:
* The code meeting the requirements above, in patch file form against commit hash 8e8ba511f3ec0d992484cd6c107343052efde479
* A detailed README.md covering how to build and deploy the application locally, and also how to deploy to Heroku
* Validation information (either a separate doc or in the README.md) for each of the requirements above
* A video showing the emojis being added, along with the appropriate popups for shortcuts and the smile button