README.md

# Expostal

[![Build Status](https://travis-ci.org/SweetIQ/expostal.svg?branch=master)](https://travis-ci.org/SweetIQ/expostal)

Elixir binding for [Libpostal] - a library for parsing/normalizing street addresses around the world. 
Powered by statistical NLP and open geo data.

## Installation

The package can be installed by adding `expostal` to your list of dependencies in `mix.exs`:

```elixir
def deps do
  [{:expostal, "~> 0.1.0"}]
end
```

### Dependencies

Depends on [system-wide installation of libpostal](https://github.com/openvenues/libpostal#installation).

[Libpostal]: https://github.com/openvenues/libpostal

## Usage

Parsing an address: 

```
iex> Expostal.Parser.parse_address("615 Rene Levesque Ouest, Montreal, QC, Canada")

%{city: "montreal", country: "canada", house_number: "615",
  road: "rene levesque ouest", state: "qc"}

```

Expanding an address: 

```
iex> Expostal.Expand.expand_address("781 Franklin Ave Crown Hts Brooklyn NY")

["781 franklin avenue crown heights brooklyn new york",
  "781 franklin avenue crown heights brooklyn ny"]
```

## Documentation

View the docs on [https://hexdocs.pm/expostal](https://hexdocs.pm/expostal), or
generate the docs locally with `mix docs`.