Challenge Overview

Overview

Welcome! This is a proof of concept challenge where we'd like to demonstate the concept of a user interacting with a chatbot. In the longer term, this functionality would be integrated into existing websites and / or mobile application. At this stage, we are simply looking for a nice looking demonstration.

The core concept of this challenge is that users are interacting an a chat client and the application is looking for key words in the text that the user is typing. When it sees one or more of these key words, the Chatbot sends a pre-defined response. Keywords and responses are provided in an attachment in the forums in a spreadsheet (you may convert this to JSON).

This application should focus on mobile use.

Notes on Design

There is no existing design for this POC. The is primarily a chat client, so please keep things simple, neat, and familiar (take inspiration from the best and most common chat clients currently in use). This will be a business oriented application and should be clean and professional looking. Although the design aspects of this challenge are minimal - please make sure you take time to make it look as polished as possible bease this POC will be used as a demonstration to gain support for a larger project. Stock artwork where needed (free license) is allowed here.

Must Have Requirements

1. Chat funtionality with the Bot. At this point in time, the chat client will not need to interact externally, the "conversations" will simply be the user chatting and the bot responding to key words.
2. A clean polished looking UI.
3. Reusable code and design elements - the code and HTML / CSS should be as clean and modulear as possible - we'd like to be able to use this code as a starting point for a larger project.
4. Please make the chat send / recieve and the Bot responses work through stub Angular services. Even though in this challnege everything will be local, in the future the app will make calls to external services.

Additional Notes and Requirements

1. This should be an HTML5 / JS / Angular application that runs entirely on the front-end (for now). There is no backend at this point in time (for this POC).
2. The applicaiton should work on desktop, but the primary place it will be viewed is in the mobile browser. It is key that it looks good and works well in mobile browsers.
3. User input and keyword triggering shoudl all be case and punctuation insensitive.
4. There is a document from the client attached in the forums which has further detail on what they are looking for. This should be used as additioal reference, however the offical requirements are here in the challenge specification.

Bonus Payments

In the client document you'll notice a section titled "What do we like to have (extra points if you could include these)". You'll see items A - F shown there. If you win the contest, for each of these items you've successfully implemented, you'll receive a bonus payment. Note for item A ("Text suggestion/selection") there are two example conversations in the Trigger spreadshet which must be implemented (one very short). These "conversations" should allow the user to choose a selection after each step. The user cannot type normal input while this is going on. Once the conversaiton ends, the user goes back into "normal" mode and can type again and keywords will once again be recognized. Bonus will be paid as follows:

Item A: $100
Items B - D: $50 each
Items E and F: $100 (BOTH E and F must be completed for the bonus, the bonus will not be paid for just one or the other)

This offers you up to an additonal $350!

3rd Party Libraries

3rd party libraries can be leveraged in this challenge as long as they are free for enterprise use (no licensing fees), have no restrictions on distribution, selling and / or profiting from the use or sale of software including the library and do not require the source code of the software including the library to be made available to recipients of the software in binary or compiled form. Requirements to credit the library in the source code that uses it are fine (just be sure to follow any such requirements in your submission)

Final Submission Guidelines

Please submit a zip file with your submission

1. All code needed to run the chat bot
2. A brief setup document or readme.MD
3. A brief video showing your application and it's features

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30055371