Goldsmiths Laurie Grove baths Grade II listed
Listed Buildings mobile app
I recently built a simple Android app that shows the location of the nearest historic building to the phone. This was partly to learn more about mobile development, but I’ve also always been interested in architecture and old buildings. Historic here being defined in the technical sense of a building officially ‘listed’ as of architectural or historic significance. The geographic coverage, at least initially, is England as listing is done separately across the nations of the UK. As far as I know this has not been done before.
The app allows you to find the nearest listed building overall and by type: Grade I the highest level of listing, Grade II* and Grade II (by far the most common type of list designation).
Update 26th July - The listed buildings from Wales and Scotland have now been added in to the app. The aim is to add in Northern Ireland listings next and potentially other countries.
1. Using the app
The app has the following icon:
and appears on the phone as:
The app has two buttons to retrieve location information which are located at the bottom of the app:
1. Nearest listed building This shows the location of the nearest listed building on the map with a marker. The grade type searched for can be selected from the drop
down. There is a slider that allows the number of nearest listed buildings to be selected (currently from one to five)
2. Nearest Wikipedia location This shows the location of the nearest geo-located Wikipedia references on the map. Some listed buildings have
Wikipedia entries, but most don’t.
The app has two modes that it can switch between:
1. My Location (the default mode the app opens with). In this mode the app uses the phone’s location to identify the nearest listed building. Here the app is showing the location of the five nearest grade 1 listed buildings to the phone’s location (The nearest being the former church of St Saviour).

2. Elsewhere This mode is selected by pressing the Elsewhere button which allows the user to search for a location (restricted to UK) and then drop a location marker
from where the nearest listed building is identified. The example below shows this in operation after searching for Highgate Cemetery. The red marker is created by tapping
the screen. Here the closest grade 1 listed building is the tomb of Karl Marx. Pressing the My Location button switches the app back to the map centred on the phone’s
location.
Getting information about sites
If you click on a marker then press the Get info button the app takes you through to the official Historic England listing entry or the Wikipedia page depending on the type of marker selected. Pressing the button Back to Main from the web page takes you back to the map.
2. Data that the app uses/Data protection
To identify the nearest listed buildings the app accesses the phone’s location. It will prompt for permission to access this data the first time you use the app. When the app is in use the location data is sent outside the phone to three places (and on three occasions):
Google: This is to plot your location on Google Maps. This will be happening anyway on an Android phone.
Wikipedia: When the Nearest Wikipedia location button is pressed your phone’s location is sent to Wikipedia servers, which otherwise have no access to it. These then return the nearest Wikipedia entries.
Amazon Web Services (AWS): When you press the Nearest listed building button your phone’s location is sent to AWS. When AWS receives this data it temporarily creates a computer to process the location information, runs the code that identifies the nearest listed building and sends the results to the phone. Once this is done the computer is shut down by AWS. This location information is not collected or stored by me. If it became useful to collect and store location information, permission will be sought from anyone using the app before doing so.
3. Technical details on how the app works
The Android app is written in Kotlin. This calls the nearest listed buildings data processing via an API call to AWS API gateway. The API call to AWS triggers a lambda function that runs a Docker container. In the Python script that is run in the container the closest listed building to the phone’s coordinates (or a dropped marker) is identified using the Annoy library. The listed building information is taken from the website of Historic England.
In addition the app makes use of the Google Maps and Wikipedia APIs. The app was not fully built with AI, but Copilot and ChatGPT played a large part in its creation.