info1300-2024sp-documents

Project 3, Final Submission: Polished and Professional Client-Side Interactivity

tl;dr Finish your site’s interactivity. Polish it. Make it ready for your portfolio!

Table of Contents

Deadlines & Slip Days

Submissions Deadline Slip Day Deadline Credit
Milestone 1 (p3m1) Wed 4/10, 11:59pm Thu 4/11, 11:59pm 47 points (correctness)
Final Submission (p3fin) Wed 4/17, 11:59pm Fri 4/19, 11:59pm 102 points (correctness)

Resources

Project Document Summary:

Coding Resources:

1. Milestone 1 Feedback Revision

Revise your project based on your Milestone 1 feedback.

When revising your plan in the design journey, don’t delete your “old” answers. Remember, we want to see your design’s journey; you are graded on your design process. If you later change your mind, keep the “old” answer and then add a new one below it explaining why you changed your mind.

2. Review Project Requirements

When working for a client, you’ll need to check their requirements frequently to ensure you’re meeting their expectations. You don’t want to spend weeks working on something only to discover at the last minute that what you’ve been working on doesn’t meet their requirements.

Please go back and re-read the project overview and project requirements.

3. Code a Working Draft of Your Interactivity

Using your plan, implement the interactivity in HTML, CSS, Javascript+jQuery.

Start by getting the JavaScript code working; don’t worry about styling for now. Simply get the basic interactivity to work. Start with implementing the modal first, then implement the hamburger menu.

This is the most important part of the assignment. If your interactivity doesn’t work, we aren’t able to provide partial credit. Please get your interactivity working first, then style it in the next step.

Tips

Your hamburger menu button should not display on wider screens. Use the On-Page-Loaded and the On-Window-Resized snippets to add and remove classes on the hamburger menu button.

Use the background-color property in your interactivity CSS classes to make it easy to see if your addClass() removeClass() calls are working the way you expect (without display: none).

If something is hidden by default, temporarily remove the CSS class that hides the element. It’s really hard to code/styling something you can’t see. When you’re done getting that element just right, add the hidden CSS class back.

Troubleshooting steps

If your interactivity is not working as intended, use the steps below to help troubleshoot and try to identify the problem.

  1. Did you load the JavaScript file in the HTML?
  2. Is the JavaScript loaded as the very last element in the <body>?
  3. Is jQuery loaded before your JavaScript file?
  4. Do all of your interactivity elements have a unique ID? (id="")
  5. Double check that the copied snippet code matches exactly.
  6. Did you forget the # in the selector in the snippet?
  7. Did you mistakenly add a . to the class name in the add/remove class snippet?
  8. Are you adding a class when you should be removing one?
  9. Are you removing a class when you should be adding one?
  10. Does the class exist in your CSS file?
  11. If the CSS class styling is subtle, temporarily make it loud: background-color: red;
  12. Are your HTML and CSS files valid? Check to make sure they validate without errors.
  13. Is your JavaScript valid? Use the developer tools, console tab, to check for any errors.
  14. Use Console Log Snippet to test that an event works.

4. Polish/Style Your Interactivity

With your basic interactivity working, style it!

Your interactivity should look professional. It should employ common design patterns and use affordances, feedback, visibility, and familiarity.

Use the Mozilla reference documentation as necessary. Professional programmers frequently need to refer to the documentation when coding. You will need to refer to this documentation too (Hint: z-index and position).

Note: If you decide that you want to change your design, change the design in the design journey first, then code that change.

5. Rationale

Once you’ve finished the final site, take a moment and explain your final interactivity’s design in the design journey.

6. Check Your Submission Thoroughly

You wouldn’t hand off the final version of a site to a very important client without checking that you’ve met all the client’s requirements first. Professionalism is important. Check your final website against the project’s requirements. Remember here, a client won’t provide you with a rubric. Instead, you need to evaluate work using the requirements.

Tip: Put a check mark next to every requirement in the write-up as you check your site.

Final Milestone Submission (p3fin)

Stage, commit and push all changed files in your Git repository to GitHub. (All commits must reside on the main branch.)

Then, complete the submission form.

Note: All files must be in the location specified in this document for credit; our grading process cannot reliably locate your work in other locations.