Hello, everybody! For Assignment2, we are going to build our first web-based application using HTML, CSS and (of course) Javascript: the Illinois Wesleyan Course Planner.
The starter code for this assignment can be found here. Here is what is included in the starter code:
.html
file.css
file.js
file.png
file of the Illinois Wesleyan logoHere are the requirements for the Course Planner:
#2e6449
.png
file in the starter code)
and the white square should be centered in the green background.To demonstrate the functionality required, please see the below screenshots and explanations.
To add a class, the Course Planner should be able to accept a string, such as "CS127", and when the "Add" button is clicked, render that string in a bulleted list below.
Before: After:To delete a class, when the "Delete" button is clicked, for a given string provided in the input box, the Course Planner should delete that string from the bulleted list.
Before: After:
Finally, the course planner should be able to accept two strings each representing a class which has already been added
to the list, and add a >
character between them to show that one is a prerequisite of the other.
This should be able to chain multiple classes together, like this:
Aside from these requirements, please make sure that your Course Planner looks as much as possible like the Course Planner in the screenshots. With regard to specific design and style, these instructions are a bit vague, on purpose! In "real" life software development, a BIG part of working out requirements and figuring things out is asking questions and creating conversations. So, please leverage Piazza, office hours, and email as much as possible to get everything cleared up, if you have any questions about style expectations and design (and you should have some!).
A note on code: we expect that you will turn in three files: an .html
file, a .css
file, and a .js
file. The html and CSS
files don't need to include comments (unless you want to, or if it helps you) but the JavaScript file MUST include at least
function-level comments, meaning that there should be a comment above each function that you write describing what that
function is expected to do, and what the inputs (parameters) and outputs should be.
Beyond that, there will be the opportunity to earn extra credit along with Assignment 2! Extra points will be granted for any effort that goes beyond the bare requirements. Some ideas are:
<a>
tags to various resources, such as course descriptions in the Illinois Wesleyan catalogIf this seems like a lot of work, please do NOT be discouraged! For starters, we have a LOT of resources for you: office hours, Piazza, email, and many online and other text resources about all of these technologies. Importantly, you should feel very proud about this, because in completing Course Planner you are doing real, live software development!! And by including good documentation and thinking about requirements, you are already thinking like a software engineer, and in fact are DOING software engineering!! Keep a curious, open mind with this...try lots of things, make little changes, keep hitting that "refresh" button to see how certain changes are rendered in the browser. If you are still feeling overwhelmed or don't know where to start, try these steps: