Yes, it is another dashboard. Once again, we were brought on to support an existing web team building their online platform.
Due to our experience with Vue and Symfony, we were able to meet the clients' targets and enhance their already excellent product.
As is our bread-and-butter, we used HTML, CSS, and JavaScript. Although in this instance, we separated out the components into their own files.
This is something called "separation of concerns", as the code was very large, and quite complex.
As we are full-stack developers, meaning that we don't just do "frontend" or "backend", we were also able to provide development work on the backend API (built with PHP/Symfony), and their server(s).
We also fully utilised Node/NPM for development and deployment.
Project management is key for a project of this size. There are a lot of "moving parts", and different teams with all their different skillsets.
As we have worked on many projects before, and with many different teams, we were able to add that cohesion as "we knew where they were coming from"; we understood what the "other guy" was saying.
For instance, the API team and the web team have different experiences. With the web team specialising in HTML, CSS, and JavaScript (JS), they didn't quite understand the PHP and the Symfony controllers. The API team, on the other hand, could handle the data flawlessly, but didn't quite understand the nature of the frontend code. Since we at Classic Niall do provide full-stack, we could unite the different areas (UI included).
Symfony is built with Blade and Twig by default. It doesn't have the architecture in place to work well with JavaScript frameworks.
When we came on board, there was only one area of the site which had Vue working, and this also needed expanding. Once all the major bugs and tasks were completed, we were able to expand into other areas of the site, making it a truly dynamic platform.
From here, we also started introducing Tailwind CSS, a "utility-first CSS framework".