Skip to content
  • Unlock Pro
  • Log in with GitHub
Solution
Submitted 11 months ago

Tip calculator app using client-side validation

P
Eli Silk•1,110
@elisilk
A solution to the Tip calculator app challenge
View live sitePreview (opens in new tab)View codeCode (opens in new tab)

Solution retrospective


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

I worked on so many different things with this one. There was a lot for me to figure out with the layout, the styling of the form elements, and the validating and processing of the form data. I am proud of how it all came together, putting together much of what I have been learning. But I also feel like it needs to be cleaned up as a whole (e.g., refactoring the code, both the CSS and the JavaScript). And there are certainly parts that I am not quite happy with and think could be improved a bit.

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

I would love to figure out better ways to structure the JavaScript code so that I was relying more on pure functions and objects than I currently am (see Learning Path reference). Feels like I lot of my code was slapped together to get it to work, rather than thinking about what the best way is (or at least a more elegant, efficient way). Any ideas? 🤔

Code
Loading...

Please log in to post a comment

Log in with GitHub

Community feedback

No feedback yet. Be the first to give feedback on Eli Silk's solution.

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

Stay up to datewith new challenges, featured solutions, selected articles, and our latest news

Frontend Mentor

  • Unlock Pro
  • Contact us
  • FAQs
  • Become a partner

Explore

  • Learning paths
  • Challenges
  • Solutions
  • Articles

Community

  • Discord
  • Guidelines

For companies

  • Hire developers
  • Train developers
© Frontend Mentor 2019 - 2025
  • Terms
  • Cookie Policy
  • Privacy Policy
  • License