I was working on a previous language learning app but it uses some HTML5 APIs which are highly dependent on the user's platform. It doesn't work on mobile devices, so voice recognition is non-existent. Since Nexmo is platform agnostic - voice and data is present on even the dumbest of phones - I thought of combining Nexmo's Voice and SMS APIs for language learning on the go. If your resolution is to learn a new language this new year, nexLingo will make it easy for you to do so, even without data connectivity.
What it does
The premise for nexLingo hinges on the hypothesis that if a machine-driven speech recognition engine can recognize what you are saying, then a native speaker would understand you without a problem. To yourself, you might think you are pronouncing words correctly, but to others, it might sound like you are spouting gibberish.
nexLingo allows you to learn a language effectively by checking your pronunciation anytime, without a data plan since it entirely depends on texts and minutes, which are mostly unlimited in the US.
As a fun aside, if you are feeling lonely, there is a chatbot component in nexLingo that allows you to converse with a machine. For now, it supports English, but with a bit of integration with CMU Sphinx and a basic machine learning model, one can extend it to other languages easily.
How I built it
Backend is in mainly Python with a smattering of PHP since Nexmo doesn't like Flask-generated VXML documents. Integrated it with Google's Web Speech API and CleverBot API.
Try it out!
Need something to talk to? Dial +1 234 650 7123 and our chatbot will lend a listening ear.
If you want to check your pronunciation on the go, first send a text message to +1 234 650 7110 in the format LANGUAGE english/chinese/french/spanish/german. For example, sending LANGUAGE chinese will tell our servers that you want to check your Mandarin pronunciation. You will receive a confirmation text.
After that, give us a ring any time at the same number, that is, +1 234 650 7110, and speak away!
What's next for nexLingo
On-demand translation - imagine if you are stuck in a foreign country. Dial a local number provided by Nexmo to get just-in-time translations! Your holiday is saved!