Awesome APIs for Front-End Devs

Recently, I’ve taken on a side project that will hopefully replace the tedious maintenance tasks we all have to do at the company I work for. In an effort to constantly be on the cutting edge, I’ve been researching some of the amazing APIs out there that can be used in both web apps and websites.

Below is a list of 5 exciting APIs I’ve come across and how you can utilize them to make some really great experiences.

Wit

Wit (https://wit.ai/) is a natural language processor that uses machine learning to pretty accurately add intelligent speech recognition to any web application. It’s my new favorite API to play with and can make any app into a personal assistant like Amazon’s Echo. Your user’s can interact with your app and complete complex tasks just by using a built in microphone.

The API is fairly simple to set up using Wit’s interface. You simply create an intent and a few sample sentences so the algorithm can learn. Using the Speech Recognition API, you can capture a user’s speech input. Currently, the HTML5 Speech Recognition API is limited to Chrome and Firefox (with flags), so this can’t be the main way user’s complete objectives, but it’s a great add-on feature. Once speech is captured, you can post it to Wit’s endpoint with your API key and it will return the intent and variables needed to complete the task.

Cloud Vision

Google’s new Cloud Vision API (https://cloud.google.com/vision/) allows developers to use the same machine learning model that powers Google Photos in a pretty simple REST API. It’s able to classify images into thousands of categories and can detect individual faces and objects. It can even pull printed words on an image.

A really interesting application of this API might be to gain some insight into the images that users are uploading to your app or website. It might be a good option if you’re looking for a simple way to moderate offensive content or even analyze facial attributes such as emotion.

Twilio

A big pain-point of web applications on a mobile device is actually getting there and logging in. Twilio (www.twilio.com) mitigates this by using SMS and voice to make interacting with your application like a conversation. Twilio offers a ton of different services for various use cases such as two factor authentication, ETAs, and call tracking.

The ability to interact with your app via text messaging is a great way to improve mobile user experience. Being able to access data quickly and easily makes this API a must have to simplify complex tasks.

Google Sheets

Sometimes we need a quick and dirty way to store data that doesn’t have to be secure. An example might be a quiz on your website that a user takes an then sees the average score of everyone who’s taken it when they finish. Google Sheets (https://apps.google.com/) can act like a database to store this information to be able to retrieve it later without having to know anything about database languages.

To post information to Sheets you can use Google App Scripts to handle the data and add it to the sheet you set up. Using only javascript you can create some unique experiences that doesn’t require knowing the first thing about how databases work. It can even act as a faux-CMS where someone not tech savvy can make an easy adjustment to a spreadsheet that will instantly be visible on the front end site.

Stormpath

Stormpath (https://stormpath.com/) makes setting up authentication a breeze. The great thing is that it handles all the security of storing user information so you don’t have to. Another feature is the ability to login via a social media platform, like Facebook, making user registration as easy as pressing a couple of buttons.

If you’re like me, you’re already thinking about all the awesome things you can build with the assistance of these APIs! There are so many great ones out there, so don’t add time to your project by trying to reinvent the wheel.