The purpose of this application is to consolidate geographical data from multiple sources to build a simple unified dataset of my personal travel experience from which maps and data visualizations can be created.
The primary objective was to allow me to inventory the numerous hiking trips I have completed in New Zealand in order to tabulate statistics about elevation, distance, time, etc. Many of the GPX tracks recorded on these adventures have some poor-quality data points which throw off the calculations and look bad when rendered on a map.
The landing page provides direct access to each of the 4 major modules of the admin portal. Each module depends heavily on the data managed by the layer below.
This is the primary workhorse of the application and leverages the data maintained in the additional modules to combine multiple GPX tracks, place data from Google Maps and manually entered metadata.
The initial screen shows a matrix of each country where GPX tracks have been imported from alongside a calendar. These provide deep links to the Map and Report pages respectively.
The data for these pages is loaded from a directory of self-contained GPX files which have all the necessary information embedded. These files are created using the Import processes in the Topo and Ortho modules. Download Example File
Trails files are created in a workflow process which allows one or more GPX tracks to be combined to create a multi-segmented file with additional metadata.
The first step involves selecting a GPX track file from the Ortho Track Import page and extracting the data into the application cache for manipulation.
Once extracted, the track data can be viewed in extensive detail and manipulated as necessary. There are tools to remove bad data points, trim the start/end points, add a name or description to the segment, or create Carto Places as necessary.
This process can be repeated for additional tracks until the entire multi-segment trail has been assembled.
Now the trail is ready to be tagged, have meta-data added and finally imported into the master dataset.
Once imported, the trail is easy recalled and all metadata is displayed alongside the map.
This module maintains the list of geological places and their additional metadata. Places are added using data from the Google Places API and stored in an Excel file which allows for easy batch editing or other manipulation.
Each place is associated with their own geographic bounds and center point which is used to determine if a track starts, ends or passes through it. Places also have associated types and additional metadata fields.
The starting page for the Carto module includes multiple starting points for adding new places or querying existing places. Direct links to the Map and Report pages allow for streamlined navigation.
Using the Google Maps API, every place documented in the system can be filtered and displayed.
It is easy to toggle between the Map and the detailed Report while retaining selected filter criteria.
The search feature shows you matching places on a map with a direct link to the existing record, if it exists, or a Preview button to easily add a new record.
Editing an existing or adding a new Place to the repository allows you to modify or augment the metadata and easy change the bounding box and center location used for map view position. A button to search Wikipedia allows for easy access to additional information that may be needed to complete the form.
The primary source of data comes from the Ortho module which crawls a local directory to discover GPX track files and text files that contain a list of places visited in a given year.
Linking into either module shows a report of the data and the import status for the record. The button allows the cache to be reset if the file system has changed since it was loaded and parsed.
Every GPX track source is loaded and parsed to display a high-level overview to make identification easy. Time and distance statistics are calculated along-side a list of inventoried Places that the track passes through. This data feeds the Topo module.
A list of places visited each year is maintained in a simple text file which is loaded, parsed and matched to existing places in the repository. This makes it easy to identify and import any new places not yet inventoried. This data feeds the Carto module.
The core module is Geo and based on a previous framework called GeoGraffiti used to build my Panograffiti.com website. Here the standard reference data of Timezones, Countries and Regions can be viewed and maintained.
Timezone data is used to adjust the GPX track recordings from UTC to local time. Country and Region data are both stored in the Places repository so that they can be maintained easily and utilize the same core functionality.