Skip to content
Project 7 for Udacity FEND Nanodegree
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Restaurant Reviews App

The Restaurant Reviews App is the seventh project for the Udacity Front-End Web Developer Nanodegree.

About the Responsive Portfolio Page

The Restaurant Reviews App is to show my skills with responsive design of a web page and implementing service worker caching.

Note: The map and images do not work in offline mode but does display the page (without map and images) as part of failing gracefully.

Project Files

This page requires the following (all included within the repository):

  • HTML files (index.html, restaurant.html)
  • CSS files (styles.css, normalize.min.css)
  • JavaScript files (dbhelper.js, main.js, restaurant_info.js)
  • Service Worker (sw.js)
  • JSON file (restaurants.json)
  • Images (images within the 'img' folder)


To work with the files:

  1. Click on the 'Clone or download' button.
  2. Press the 'Download ZIP' button
  3. Unzip the files on your computer
  4. Open the index.html file within an Internet browser

Alternatively, if you have GitHub installed:

  1. Click on the 'Clone or download' button.
  2. Copy the github .git URL file (e.g.
  3. Navigate to your GitHub repository location on your computer
  4. In your console type 'git clone ' and paste the .git URL
  1. Open dbhelper.js and uncomment port and local host return statement.
  2. Start a local host server, by following the following instructions:
    • 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.
    • Note - For Windows systems, Python 3.x is installed as python by default. To start a Python 3.x server, you can simply enter python -m http.server 8000.
  3. With your server running, visit the site: http://localhost:8000

Project Link

Link to project

Topics Covered

The project encompases all the following topics of the 'Front-End Applications' chapter:

  • Creating Promises
  • Introducing Service Workers

Additionally, this project incorporates the following:

  • Grid layout
  • Accessibility development
  • Responsive images
  • Responsive page layout


The majority of the files were developed by Udacity and were adapted to make the pages responsive, accessible and to use offline caching.

The map uses the Mapbox API.

The code for the fetch request was taken from:

You can’t perform that action at this time.