LangBot is a mobile chatbot that is trained to teach people how to read, write, understand, and speak a new language.
The MVP will have the following features:
- User is able to have a simple conversation (text to and from / speak to and from) with the chatbot in a foreign language
- The chatbot is trained to know basic greetings and everyday conversation snippets
- There is one foreign language (not English) available for the user to choose from
- The chatbot attempts to correct grammar and/or vocabulary mistakes
After finishing the MVP, features can be further built upon, or new features can be added. Team members will have flexibility in what ideas get implemented and how they want to approach implementing them. At the end of this document, there is a list of possible stretch goals that could be considered after the MVP is completed.
Click here to install Node LTS.
Node LTS is required to use the React Native framework. Node helps execute JavaScript outside of a browser environment.
Click here to install React Native. -Follow the Expo CLI Quickstart
React Native is a popular framework for cross-platform mobile development.
To view your app on a mobile device, see the 'Mobile Client: Expo for iOS and Android' section here. This is NOT required to develop the mobile app.
For a quick overview of React Native and how to use it, click here.
To see some examples and documentation, click here for React Native and here for Expo and navigate through the left-hand navigation menus.
Click here for an overview of speech-to-text tools. Click here for an overview of text-to-speech tools.
These speech services allows for the conversational aspect of the chatbot.
Click here to familiarize yourself with JavaScript.
JavaScript will be used heavily to develop the User Interface.
Click here to install Visual Studio. The Community version is fine.
I find this IDE to be user-friendly. A normal text editor like Sublime, Atom, or even Note is fine. Visual Studio is NOT required.
There will be more software that team members will use. Don't worry, we will discuss this later. I will add some resources after we have discussed.
The apps listed here are to be used as reference material only. The goal is not to re-create these apps but to be creative and stand out from them. Looking at some of these can also spark ideas for what kinds of features team members want to implement.
- Add more languages for the user to choose from
- Increase chatbot functionality to include more topics (Food, School, Politics, Business, etc.)
- Words can be user-highlighted to be defined