Locale Selection

  • You can now select your locale in the Settings page.
    • Locale data is driven off frontiernav-data. If your locale isn't fully available, consider contributing!

Other Changes

  • Moved all the data out of the app and into frontiernav-data.
    • Anyone can now add and change items in the app by sending pull requests.

You can find the app here as always (link)

Towards a Database

I was looking again into migrating the data into Neo4j. After creating the migration scripts, I found out that Neo4j doesn't allow nested maps in its node properties. That's a huge show-stopper. Right now the main nodes using nested maps are Markers and Areas which hold longitude and latitude coordinates. i.e.

{
  data: {
    "latLng": {
      "lat": 123.00,
      "lng": 45.243
    }
  }
}

The only way to really solve this is to move the coordinates into their own nodes and reference them with a relationship. There's around 1000+ nodes with nested maps so we're tripling (including relationships) to 3000+. That's a lot of additional nodes and complexity.

So, I've decided to hold off thinking about it until the bundled data exceeds 1MB (gzipped). In the mean time, I'll gradually work the client-side logic towards loading data partially. The localisation logic in this update helped immensely with that.

Comments