---
layout: default
title: Create a geocoding web service
---

# Create a geocoding web service

In this tutorial, we demonstrate how to create a geocoding index and then serve it in a simple web application.

## Dataset

The data we will be using comes from [Geonames](https://www.geonames.org).

## Generate the index

The following [workflow](https://raw.githubusercontent.com/apache/incubator-baremaps/main/examples/geocoding/workflow.js) will download the Geonames data, decompress it, and finally build the index.

```
baremaps workflow execute --file examples/geocoding/workflow.js
```

## Serve the data

The following command will serve the Geonames index over HTTP in a simple web application.

```
baremaps geocoder serve --index geocoder-index --port 9000
```

Go to [http://localhost:9000/](http://localhost:9000/) to see it in action.

## Conclusion

In this tutorial, we learnt how to create a Geocoding index and serve it in a simple web application.
This will be very useful in a map application to find places quickly by writing an address in a prompt.
