Building location aware applications

Building location aware applications

Nowadays location is a very important feature of modern web and mobile applications. We want to track where things are and customers expect to receive location based notifications.

When trying to add location features to our applications every provider has a different API and characteristics, and also integrating those location features in our existing backend and client application can be challenging and take some time.

That is why having a service that provides an API no matter which location provider you pick and also it integrates the location features into our existing backend services is crucial. For example, you might need to send a notification or update a registry in a database based on the location update of a package. Therefore the location service needs to interact with our backend to achieve those things.

Amazon Location Service is a new service from AWS that allows you to do that. It provides many location based features, like:

  • Maps: Help you visualize location information and are the foundations of many location-based service capabilities.
  • Places: Enables your application to offer search functionality, convert addresses into geographic coordinates in latitude and longitude (geocoding), and convert a coordinate into a street address (reverse geocoding).
  • Tracking: You can instantly retrieve current and historical location of devices running your tracking-enabled application.
  • Geofencing: Gives your application the ability to detect and act when a tracked device enters or exits a pre-determined geographical boundary known as a geofence. When a breach of the geofence is detected, Amazon Location automatically sends the exit or entry event to Amazon EventBridge, which can then trigger downstream actions, such as sending a notification to a restaurant that a delivery driver is nearby. This event-driven setup makes it easy for your application to scale in size and sophistication as needed.
  • Routing: Your application can request the travel time, distance, and directions between any two locations. This enables your application users to obtain accurate estimates of travel time based on up-to-date roadway information and live traffic information.

Get started Amazon Location Service

To get started using this service with AWS Amplify I have created a series of tutorials (that will get updated as soon as Routing is available).

In this first video you will learn how to add a map with search capability in your React application using AWS Amplify and the AWS SDK.

In the second video you will learn how to build routes and show them in the map.

In the third video you will learn how to send events when someone is in a area of interest.

###More interesting use cases

In this video you will build an application that display the real-time position of a device. Also you will do the backend for the tracking application with no code and the code that the devices need to have in order to send the tracking information.

In this video you build an application that sends notification in real time based on location. You will build an event-driven architecture without using any server or even writing any backend code. For that you will be using Amazon Location Services, AWS EventBridge and SQS.

🔸 Get the code for the tutorial: https://github.com/mavi888/my-stores-app

🔸 Get the code for the tutorial: https://github.com/mavi888/drop-the-box-demo

More links:

🔸 Learn about AWS Amplify

🔸 What is Amazon event-bridge?

🔸 Geofence creation service

🔸 Amazon Location Service web site : aws.amazon.com/location

🔸 Amplify documentation for location based services

🔸 Code samples of apps using this service

🔸 Developer guide for the Amazon Location Services