Write an app that:
- Read the JSON we have as devices.json, store it in the database, you can create a task for that
- Store the devices in the database, please use a SQL database for your choice
- Write an API to search against the devices you just created in your database
- Improve the current UI to use the API you created
- Write at least 2 specs, but no more than 5 - we don't expect 100% coverage
- Create as many files as you need
- Create or organize the express project as you want, if you want to organize it diferently please explain why
- Create a better UI for the view we already have, make sure you're following UX/UI standards
- Create validations along the form, to make sure people is not entry invalid data
- Keep using bootstrap v5 on the UI
- Adherence to JavaScript conventions and idioms
- Cleanliness/Clarity: Is the intent of the code obvious? Are things named appropriately? Please void overly clever solutions.
- Consistent style: We don't expect you to follow a specific JavaScript code style, but you should be consistent with your choice.
- Maintainability: How flexible is the code?
- Testability: Is it easy to test the code? Please demonstrate with unit tests.
- Use DRY, KISS and SOLID responsibly to find the sweet spot between an under-engineering and over-engineering.