Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found

Submitted

Tip Calculator

P

@robcrock

Desktop design screenshot for the Tip calculator app coding challenge

This is a solution for...

  • HTML
  • CSS
  • JS
2junior
View challenge

Design comparison


SolutionDesign

Solution retrospective


What are you most proud of, and what would you do differently next time?

I'm proud of pushing through the production grade build of this form with shadcn/ui and react-hook-form. There were plenty of opportunities to take short cuts, but I'm glad I stuck with it and made a high quality build.

What challenges did you encounter, and how did you overcome them?

I thought this was going to be an easier form to build than it turned out to be. Because there was not submit button I need to use the watch method, which I hadn't done before. I need to customize the errors and also coerce the types with zod.

What specific areas of your project would you like help with?

If anyone has feedback on better ways to leverage react-hook-form with zod and shadcn/ui I am all for it.

Community feedback

P

@AdamHaniff

Posted

• I know the inputs take in numbers, but you should set the input type to text to get rid of the up and down arrows.

• I'm not sure why you put default values for the bill, tip %, and number of people. When a site first loads, the app should look like it has never been touched by a user before.

• Also, maybe try to add in some logic where if the user has already selected a tip % and they click that same percentage again, it gets deselected.

0

P

@robcrock

Posted

@AdamHaniff you're right there are many things I could improve. I appreciate your feedback.

0

Please log in to post a comment

Log in with GitHub
Discord logo

Join our Discord community

Join thousands of Frontend Mentor community members taking the challenges, sharing resources, helping each other, and chatting about all things front-end!

Join our Discord