/saved-places

Google Places API + custom notes

Primary LanguageJavaScript

SavedPlaces

Find your favorite locations, categorize them, and write notes about them so you can easily refer to them later!

Overview

Demo

Codebase

  1. Used Angular:
  • similarity to Ember in terms of Dependency Injection
  • easy to get something complex setup with minimal code
  • organization of code into separate modules with factories, directives, and filters that can be easily used across the app
  • Angular router to handle different views
  • Material-UI is fully responsive and well-styled
  1. Different patters to showcase knowledge of / flexibility with framework:
  • both $scope and this patterns within controllers
  • both components and HTML templates for different views
  • Angular provided + custom directives
  • Angular provided + custom filters
  1. Error handling:
  • wait for google maps to load before allowing app use
  • default to mid-US as map center when current location is not known (if user does not allow location services in browser)
  • make sure place and category are provided before accepting input
  • redirect to home on invalid routes or place URLs

Tech Stack

Usage

You'll need API keys for Google Places. Create a file in the 'app/api/' folder called 'keys.js'. Using 'keys.example.js' as a template, add your Google Places API key here.

If you neglect to do this step, the app will prompt you for your individual key.

Requirements

Development

Installing Dependencies

From within the root directory:

npm install -g bower http-server
bower install

Running Locally

Start the server by running:

http-server .

Visit localhost:8080 in the browser.