When it comes to creating a digital application, the user interface plays a big role. At FleetEV, our services are comprised of multiple applications that each serve a different kind of audience. So, when it came to developing our applications, ensuring that we chose the correct UI framework was essential.
The applications we needed to create included:
- Our internal tools for team members which are data heavy, needing to be performant and easy to use.
- Our customer facing apps which need to be fast, reliable and easy to use as well as able to handle real-time updates.
- Our public facing website with a marketing focus, needing to be fast and SEO friendly
So, how did we choose a suitable UI framework?
Narrowing down the options:
When looking at our applications, we knew that it would be easier if the components are able to be shared across all apps with consistent tooling and frameworks. This removed the option of choosing different frameworks for each app based on their needs and narrowed the decision to one unanimous framework.
In order to select the correct framework, we had to factor in the engineers that would be working on the applications for our desired results, so we needed to choose a well-known framework to increase the likelihood of hiring engineers that were already familiar with the technology. We are a hybrid working department which additionally required our engineers to be in a commutable range, so we researched the most popular frameworks in the local area.
With these factors considered, we found there were only two UI frameworks that met our requirements and had a large community in the area: React/Next.js and Angular. There were more engineers in the area that had experience with React/Next.js, so the decision to use React/Next.js was easy.
Fit for FleetEV?
So, now we have chosen a framework that our staff are familiar with and has the features we need, we needed to assess if it was the right fit for FleetEV. Being a small and versatile team, we decided to try out the framework ourselves, knowing that we can pivot quickly if we change our minds.
Step one was creating a new application for administering accounts. The app was simple and only comprised of a few pages and forms, making it easy to get up and running quickly.
Step two was creating our customer facing app allowing our team to order salary sacrifice cars on behalf of clients. This app was more complex than the first due to the dynamic pricing and car options, so we had to incorporate dynamic data and real-time updates. While we were able to use some of the components from the admin app, we had to create a lot of new components to handle the dynamic data. The framework still ran smoothly and we were able to get the app set up efficiently.
Has it worked?
Both apps have been operating for several months now, and we have been able to add new features and fix bugs quickly, making the app maintenance easy. We have additionally hired new engineers and have been able to share the components across all our apps.
We believe we made the right choice with Next.jsand will continue to use it to develop our apps. The next app on our list that we are in the process of building is our public facing website.
We have have been very impressed with the static rendering capabilities of Next.jsand are confident that this will be able to handle our needs for the website in making it more performant and SEO friendly.
We will be releasing our website app soon and will be monitoring the performance closely, but all signs are pointing to Next.js being a great choice for FleetEV.