Multilingual & Interactive Invoice App

Solution retrospective
This has been one of the most challenging tasks I have undertaken so far, which was to be expected since it is a GURU level challenge. I am proud of the progress I made in completing the challenge, along with a few additional features I implemented:
-
Multilingual Support: The site supports the Finnish language, although some parts are still incomplete. This was my first experience creating a multilingual site, and I encountered numerous bugs along the way. I used the react-i18next library and experimented with lazy loading for optimization.
-
Currency Selection: On the settings page, I added an option for users to select their preferred currency, which also changes the formatting accordingly. While a more dynamic solution with locale selection might be better, I am currently using preselected locales for simplicity.
-
Font Theme: Although this isn’t a major feature, I wanted to solidify my knowledge of the implementation, as I had previously done something similar in the Notes App challenge.
-
Print Out: This was a completely new feature to implement, I initially thought it would be straightforward by using the inbuilt JS API window.print() but unfortunately that had limits like not preserving my styles so I ended up utilizing this package react-to-print
Current Bugs:
-
Poor color contrast in light mode: While attempting to apply light mode at the root level, I mistakenly mixed up some colors, failing to match the design.
-
Photo upload: As this app is purely front-end and uses localStorage for data persistence, I couldn't figure out how to store the uploaded image in localStorage so that it would persist after a page refresh! Perhaps when I learn a little bit about the cloud I can enhance this feature.
-
Accessibility: Yeah this one is still an issue but I have been trying to refer to the docs to write the correct labels. When to announce certain messages like in form validation
Overall, I am pleased with the outcome and the new skills I have developed through this process, and will continue to learn more. I welcome any constructive feedback! HAPPY CODING!
A big thank you to Frontend Mentor for providing such nice designs and well-thought-out challenges.
Please log in to post a comment
Log in with GitHubCommunity feedback
No feedback yet. Be the first to give feedback on Victor'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