Giter Club home page Giter Club logo

arealle's Introduction

arealle

This project was developed as an exercise for using Java to interact with various databases engines, in combination with a modern JavaScript library for creating single page applications. The exercise models physical real estate plots and amenities within their proximity. For example, it can be determined that plot X, on street Y, is within distance Z to desirable amenities such as a beach, conservation area, or public transportation. The name of the project is a play on the words "Aerial" and "Area".

Data was imported from generally available MassGIS ESRI datasets, including plot plans and various features sets for bodies of water, conservation areas, public transportation etc.

Processes were developed to parse the datasets, load them into a combination of relational and non-relational stores as a basis for a service APIs used to support a front-end. The Geometry extension of MySQL was also used to store ESRI GeoPoints that were eventually converted to Google Lat/Lng values.

Back-end data is consumed via several dedicated tasks that first break data down into relational records. The cleaned records are then fed into a Mongo database for storing property documents (eg. a plot, at a street address, with various dwelling attributes), and a SOLR store used solely to store GEO coordinates for properties and amenities, and to perform proximity-based searches between them.

The UI, built on the data service, is a single-page application developed primarily using the Backbone and Marionette JavaScript libraries, and the GoogleMaps API.

The project, which uses Gradle as a build tool, is organized into two sub-projects, one implementing a generic, custom data access layer built on top of Spring JDBC, and another containing data parsing and loading tasks, as well as the web application itself.

arealle's People

Contributors

joe-aparo avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.