@mattstuddert
Posted
Great to see you submit a solution for this challenge, Chamu. You've improved so much with each project you've done! These larger projects definitely take some extra planning at the beginning. It's time well spent!
As you work more with React, you'll refine your architecture and spot areas where you can make components more reusable. Here are some thoughts after taking a look at your code:
- You're using inconsistent naming conventions for your files and components. For files, you're using camel case in some places, all lower case in others, and snake case as well. In React, it's most common to use camel case. This is true for component names as well. For example, you've got
Graphicdesignmain
, which should beGraphicDesignMain
. - When you've got several props you're passing down, be sure to break them onto new lines. This helps with readability. Also, use restructuring in the child component to clean up the code, so you're not always using
props.
at the beginning of each prop value. - Your
srcset
attributes are currently set up to choose the wrong images. You'll see on the about page for desktop; it's actually choosing the images' mobile version. I'd recommend looking into thepicture
element. It's much easier to work with. - In some places, you've uppercased the content in the HTML itself. Try to avoid doing that as some screen reader software will read this content letter-by-letter, making that content inaccessible to screen reader users. Instead, write it normally in your HTML and then use text-transform: uppercase; in your CSS to visually uppercase the text to match the design.
- When you navigate to a new page, the window doesn't scroll to the top. You could add
window.scrollTo(0, 0);
for any navigation event to help with that.
Let me know if you have any questions. Keep it up! 👍