Working with startups, one thing I have realised with time is that it’s very important to plan sprints in a way that we are ready with something for the client to see and review as fast as possible. Working with a hard timeline and/or fixed budget, the ability to see something evolving with every release/milestone really helps in not only showing the progress in a very transparent way but also building confidence with the client in terms of the progress made (especially if you are working with them for the first time).
When we were working on a healthcare platform called Trualta, initially the client’s idea was to use some ready made solution, tweak it and go live. But the available solutions were not so elegant and looked quite dated. In this situation, we were able to convince the client that a custom-build platform will be a better approach in the long run both in terms of scalability and for the ability to customise based on new requirements as they emerge from the end-user.
The application required a full content management capability for managing Articles, Audio, Video and Quiz type content for the learners. Additionally, there were requirements for modules like Forums, Ask an Expert and Events. Also, to add some gamification to the system and keep the users interested, a small product catalogue with reward points to redeem products in exchange for the reward points, which are acquired through interactions with the system, was also envisioned.
Laravel was our first platform of choice because of our familiarity with the framework, the ability to do rapid development and so many out of the box solutions like Authentication, Caching, Mailing, etc., which would save us a lot of time. We did consider CMSes like Drupal and WordPress, however, we knew that most of the users will be logged in and hence because of performance concerns, we decided otherwise. If you want to read about what are the performance concerns with Drupal, click here (add a link to drupal performance blog).
Here, the advantages we had with Vue.js were:
- We didn’t had to do a full-blown SPA to get the rich UI experience
- Data was passed to each element of the page through PHP templates
- Vue.js will get its data using the props which are sent as JSON encoded data from a blade file
Hoping this blog was a helpful read. If you have any suggestions or thoughts, write to us at _____________________ or comment below.
Written by: Amitav Roy
Edited by: Thailambal PN