A multi-page marketing website. Showcasing who the customers are, how easy it is to work with this product and pricing plans. Taking a mobile-first approach and using modern CSS like Flexbox and Grid for layout purposes.
A password generator application that allows the user to select a password length, if the user wants to use uppercase characters, lowercase characters, numeric characters, or smybol characters in their password. The user is able to generate a new password and copy the passwords to their clipboards.
Prototypal inheritance is more flexible than classical inheritance. With classical inheritance, you inherit all of the parent's methods. With prototypal inheritance, you can inherit specific functions by adding them to the .prototype.
Classes are a great way to organize code and make more code reusable. Think of classes as code blueprints - you can use them to create a new `instances`. Think of an instance as new data (or context) that follow the same data structure.
Optional chaining can be really useful to help with potential errors when accessing a property of an object. It allows you to access a property deep within an object without risking an error if one of the properties is nullish (null or undefined).