Due Date: Wednesday, 28 April, for the in-class demo
Sunday, 2 May, for the final graded submission
Group Project
Objectives
Familiarity with- client-side JavaScript
- DOM event handling
- Dojo toolkit
- AJAX
- mashups
- public web APIs
Description
In this project, you will develop a browser-based mashup (from at least two sources) of your choice, pending on instructor approval. No later than Sunday, 4 April, should you have discussed your project choice with the instructor and finalized the project requirements. This project is a great opportunity for your group to get really creative and have lots of fun. (Hint: keep it simple! As many of the examples show, some useful mashups are extremely simple.)General requirements
For full credit, your mashup should have the following characteristics:- data and/or functionality from two or more source APIs (a link to each source must be included in the footer of the application's pages)
- clear, useful functionality on top of the source data/functionality
- some form of persistent data (if required for the functionality provided)
Extra credit will be given for mashups with a focus on social justice. You may look for demographics and other suitable APIs here.
Examples
- Remix (single source): NY Times Campaign Finance Remix
- Mashup (two or more sources): HousingMaps SakMap
Sample project
The default project, in case you prefer not to come up with your own, is a continuation of the food and health themes from Project 3 assigned in an earlier version of this course. The requirements for this option, called the Recipe Sanity Check Mashup, are as follows.- The user enters the ingredients of a recipe into a table with a column for the ingredient name and another column for the quantity.
- The user then presses the "check" button.
- For each ingredient, the application then shows the following information:
- energy in kcal for the given quantity
- some pictures that pop up on demand
- energy in kcal for the given quantity
- The application also calculates the total energy for the recipe.
- (Less hard) Links to health-related articles for each ingredient.
- (Less hard) Storing data for ingredients not yet in the database.
- (Harder) Storing, retrieving, and searching recipes.
- XHTML 1.1 compliance.
- Browser-based mashup in JavaScript with one or more suitable libraries such as Dojo, JQuery, etc.
- Per-ingredient calory data comes from Google Base, where you can manually enter this information through your Google account. Recipes can be stored there as well.
- Photos come from a source such as Flickr. You should narrow the search using suitable tags.
- Health-related articles can come from the British NHS.
No comments:
Post a Comment