CP 221 Practical Assignment One
CP 221 Practical Assignment One
Scenario:
You have recently completed your web development training and want to showcase your
skills to potential employers and clients. Your task is to design and build a fully functional
personal portfolio website using HTML, CSS, and JavaScript, demonstrating industry best
practices in structure, design, and interaction.
Assignment Description:
You will create a multi-page website that includes the following sections:
1. Homepage
2. About Me
3. Portfolio/Projects
4. Contact Form
5. Survey Page
Your website should implement the following core concepts and features:
HTML Requirements
CSS Requirements
JavaScript Requirements
• Create a greeting function that runs on page load based on time of day.
• Handle form validation using regex for the contact form (e.g., email, phone number).
• Toggle a dark/light mode theme using JavaScript and CSS interaction.
• Manipulate page content dynamically (e.g., show/hide project details).
• Access and update elements using the DOM.
• Use event listeners for mouse clicks or input focus.
Additional Requirements
Submission Checklist:
• ZIP file containing all your HTML, CSS, JS files, and images
• A live demo link (if deployed on GitHub Pages etc.)
• A one-page readme document explaining:
o Tools used
o Key features implemented
o Challenges faced and how they were solved