This is the project which was supposed to hold the admin panel.
I planned to leverage two main components
- react-admin has an excellent UI/UX out of the box and felt like it would make me focus on coding the high value bits - i.e. the business logic - instead of getting into the way. I like tools like these. Why reinvent a (potentially square) wheel when I can stand on the shoulders of giants?
- Some identity provider to handle authentication/authorization. Probably I would have chose Passport.js because it has official support both on the Nest.js site and Next.js documentation. Iron session looked like a valid alternative.
Honestly, I don't think there's much more to talk about. Apart from these high level critical decisions, I felt that pretty much the rest of this app was an exercise of technique. I preferred to dive into some more interesting aspects for this challenge and stopped here.
Link to the Docs in case you're interested to learn more about Vite.