Final Project
Keeping in mind your own thesis goals, current clients, and other needs, design a web application or game that integrates all the structures and functions you’ve learned this semester. Your application should include meaningful interactivity, responsiveness to the user, and dynamically generated content.
Your project should include
- Variables, Arrays, Objects and Constructors
- Functions, Loops and If/Else statements
- Appropriate use of built-in functions and methods
- Connection to outside APIs (this should include some integration with web services)
- Manipulation of the DOM / Creation and deletion of elements
- At least one Canvas object with dynamically generated content
- Local storage, geolocation or web workers (at least one, based on project needs)
Your project should meaningfully integrate each element towards accomplishing your goal. Example ideas include games, electronic literature and generated content, a dynamic portfolio page, or an interactive application. Keep in mind the scale of your project: a well-designed solution should provide a complete user experience.
The final project is individually determined. Make sure to check in early to address any concerns of the scope or applicability of your project to meeting these requirements.
- A-Level Work: Build a working, user-responsive game or application that meaningfully integrates all the JavaScript and HTML5 structures we’ve used thus far with well-commented and readable code. Code should demonstrate an understanding of how all structures work and the ability to combine the pieces towards an original solution to a clearly defined task. For A-Level work, the project should go above and beyond to show mastery of advanced structures, original use of the Canvas element, and focused user-experience design.
- B-Level Work: Build a working, user-responsive game or application that meaningfully integrates all the JavaScript and HTML5 structures we’ve used thus far with well-commented and readable code. Code should demonstrate an understanding of how all structures work and the ability to combine the pieces towards an original solution to a clearly defined task.
- C-Level Work: Build a working, user-responsive game or application using simple JavaScript and HTML5 structures. Advanced elements (such as web services, the canvas, geolocation and web workers) might be missing or buggy.
- D-Level Work: Missing implementation of both basic and advanced JavaScript and HTML5 structures. Basic functionality might be present, but as a whole the application or game will not compile and shows a failure to understand programming design principles.
- Failing Work: Project is not submitted or demonstrates no attempt to complete the task.