Skip to content

kkeef11-solace-assignment#1

Open
kkeef11 wants to merge 2 commits intomainfrom
kkeef-solace-assignment
Open

kkeef11-solace-assignment#1
kkeef11 wants to merge 2 commits intomainfrom
kkeef-solace-assignment

Conversation

@kkeef11
Copy link
Copy Markdown
Owner

@kkeef11 kkeef11 commented Apr 8, 2025

Hi all!

So the changes I made revolved around updating the frontend and slightly adjusting the backend. I updated the frontend to be consistent with Solace's main site, thereafter I utilized one of my favorite ways to display table data: MUI-X Datagrid. I have a ton of experience with these after introducing them myself to my current role's web apps. I put the column definition within a separate config folder, however to be transparent, this may not always be the best practice. In some cases where you may want to make a cell editable, and utilize a custom input component, from my experience it may be easier to include this column def within the file of your datagrid in case you're wanting to validate the row the user edits. But in this instance, I thought it would be neater to keep it outside of the main file given that there was no real need for it to be there.

Given that we wanted to act as if the backend and frontend were two separate code bases, I utilized react-query to handle fetching and what little server state we had for the frontend. And on the backend I tried to utilize a router/validator/controller/service structure for the api but given it was such a minimal endpoint, I went ahead and stuck with a route and controller file.

I believe this was an improvement on the previous implementation by implementing a consistent ui to align with Solace's main web app while also introducing react-query to handle server state, and other hooks to maintain an optimal performance.

As stated in the discussion.md, this was a lot of fun, thanks for the opportunity!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant