/mws-restaurant-stage-1

Starter Code for the Udacity's "Mobile Web Specialist Restaurant Reviews App: Stage 1" Project

Primary LanguageJavaScript

Mobile Web Specialist Certification Course


Three Stage Course Material Project - Restaurant Reviews

Project Overview: Stage 1

For the Restaurant Reviews projects, you will incrementally convert a static webpage to a mobile-ready web application. In Stage One, you will take a static design that lacks accessibility and convert the design to be responsive on different sized displays and accessible for screen reader use. You will also add a service worker to begin the process of creating a seamless offline experience for your users.

Specification

You have been provided the code for a restaurant reviews website. The code has a lot of issues. It’s barely usable on a desktop browser, much less a mobile device. It also doesn’t include any standard accessibility features, and it doesn’t work offline at all. Your job is to update the code to resolve these issues while still maintaining the included functionality.

What do I do from here?

  1. In this folder, start up a simple HTTP server to serve up the site files on your local computer. Python has some simple tools to do this, and you don't even need to know Python. For most people, it's already installed on your computer.

In a terminal, check the version of Python you have: python -V. If you have Python 2.x, spin up the server with python -m SimpleHTTPServer 8000 (or some other port, if port 8000 is already in use.) For Python 3.x, you can use python3 -m http.server 8000. If you don't have Python installed, navigate to Python's website to download and install the software.

  1. With your server running, visit the site: http://localhost:8000, and look around for a bit to see what the current experience looks like.
  2. Explore the provided code, and make start making a plan to implement the required features in three areas: responsive design, accessibility and offline use.
  3. Write code to implement the updates to get this site on its way to being a mobile-ready website.

Note about ES6

Most of the code in this project has been written to the ES6 JavaScript specification for compatibility with modern web browsers and future proofing JavaScript code. As much as possible, try to maintain use of ES6 in any additional JavaScript you write.

Students notes

Steps to complete the project

  1. Fork and clone the starter repository. - DONE.
  2. You'll need your own Google Maps API key. - DONE.
  3. Convert the provided site to use a responsive design - DONE.
  • Bootstrap and other CSS frameworks should not be used; all responsiveness should be done with CSS - DONE
  • Use appropriate document type declaration and viewport tags - DONE.
  • Create a responsive grid-based layout using CSS - DONE.
  • Use media queries that provide fluid breakpoints across different screen sizes - DONE.
  • Use responsive images that adjust for the dimensions and resolution of any mobile device - DONE (270px images are loaded for the restaraurants listing page).
  1. Implement accessibility features in the site HTML (most of this HTML is generated by JavaScript functions) - DONE (ARIA Label for View Details link and ALT tag for images).
  2. Add a ServiceWorker script to cache requests to all of the site’s assets so that any page that has been visited by a user will be accessible when the user is offline. Only caching needs to be implemented, no other ServiceWorker features - DONE.
  3. Fixes and improvements for resubmition - DONE.