COSC 310 - Web-based Chatbot
Project Type: | Group (3 Iterations) & Solo (Final Iteration) |
---|---|
Purpose: | Class Project |
Programming Language: | JavaScript (node.js), HTML |
GitHub Link: | Click Here |
Project Description
This project was created as part of a requirement for the class. Our group was tasked with creating a Chatbot that could have a reasonably real conversation with the user. We were given freedom to choose any language we wanted, so we opted for JavaScript and HTML to improve the portability of the Chatbot, and to help reduce the overhead of creating a UI. The first 3 Iterations were done as a group, and the final iteration was done individually. In the final iteration, I had to implement 2 APIs of my choice.
Roles & Responsibilities
Group Contribution
For the 3 group iterations of this project, I was tasked with managing the team, implementing the first iteration of the Porter Stemmer algorithm, improving the ChatBot's vocabulary,creating project demo videos for each iteration, and handling the project documentation.
Solo Work
In the final iteration, I had to implement 2 APIs. I chose to implement the Google Translate API and the Google Street View Static API.
The Google Translate API felt like an almost necessary choice, since a ChatBot should be capable of speaking different languages. I didn't implement input language detection due to time and capacity constraints, but it could easily be implemented in the future.
When I was deciding on the 2nd API to implement, I didn't really feel there was an API that could fit with the theme around the ChatBot. After an hour of brainstorming, I realized that there are places on Earth that look similar to places in space. With that, I decided to use the Google Street View Static API to help me source images of these places.
In addition to the APIs, I had to make some Quality of Life changes to help integrate the APIs. I implemented a dropdown menu to help make language selection more intuitive, and I added a window for the images to be displayed in.