For the Restaurant Reviews: Stage One project, I have incrementally converted a static webpage to a mobile-ready web application. I have taken a static design that lacks accessibility and converted the design to be responsive on different sized displays and accessible for screen reader use. I also added a service worker to begin the process of creating a seamless offline experience for my users.
I had been provided with the code for a restaurant reviews website. The code had a lot of issues! It was barely usable on a desktop browser, much less a mobile device. It also didn’t include any standard accessibility features, and it didn’t work offline at all. My job was to update the code to resolve these issues while still maintaining the included functionality.
- 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.
- With your server running, visit the site:
http://localhost:8000
, and look around for a bit to see what the current experience looks like. - Explore the provided code, and start making a plan to implement the required features in three areas: responsive design, accessibility and offline use.
- Write code to implement the updates to get this site on its way to being a mobile-ready website.
This repository uses leafletjs with Mapbox. I have included a mapbox token with this project. You do not need to replace <your MAPBOX API KEY HERE>
with a token from Mapbox. Mapbox is free to use, and does not require any payment information.
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, I have tried to maintain use of ES6 in all additional JavaScript I wrote.
Matthew Cranford Blogs
Grow with Google SLACK channel: Project 5
Starter Code and Project provided by Udacity via GitHub
Traversy Media
ALSO, These Websites
developers.Google
MDN
css-Tricks
Web Accessibilty Initiative
ES6(JavaScript)
CSS
HTML5
Markdown
Mapbox
Leafletjs