savannahblood / cs260-lab2

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Weather App

In this assignment you will use JavaScript to build a weather app. To get the weather, we'll use the OpenWeatherMap API.

Starting the lab

To start the lab, you must follow this GitHub Classroom link. This will create a private repository for you using our classroom site. We will only grade repositories created and submitted this way.

Once you "Accept the assignment" on GitHub Classroom, it will create a new repository for you and grant you access to it on GitHub. In order to start working on the lab, simply clone the repository to your laptop or other working environment.

Tutorials

Use the tutorials to get started with using the weather API. We'll begin by building a form that gets the current weather:

weather form

Weather Forecast

Once you have completed the basic weather calls from the tutorial, use the API to add the 5-day and 3-hour forecast.

Details

There is a significant amount of data returned from the API. Spend a reasonable amount of time to figure out how to show as much of this as you can, including icons where possible.

Web Design

Add some design to the page. Create a page that looks professional and follows the web design criteria we have discussed:

  • spacing -- use white space effectively to make the site clearer

  • color -- use color effectively to make the site appealing

  • typography -- make it pleasant to read

  • consistency -- everything should match

  • responsive design -- the site should work as well on mobile as on desktops; mobile-first designs for mobile, then expands to desktop

Link to GitHub repository

In a footer, you must include a link to your GitHub repository, which must be stored in GitHub Classroom.

Submission

On Canvas, submit the URL for your website, which should be running on your DigitalOcean server.

Rubric for Grading

When we grade these labs, we will award points using the following rubric:

Item Points
Search for current weather works 40
5-day/3-hour weather forecast added 30
Effort spent adding information that is returned from the API 20
Uses good web design principles 10

For the web design principles, you will receive 2 points for each for spacing, typography, color, consistency, and responsive design. We will subtract 1 point for a principle if you need some work, 2 points if you need a lot of work.

About