A VueJS SPA powered by a multi-repo system
A lot of times while building products, we developers are a group of individuals working on different modules in a project at different places at different timezones. One such use case would be when there are developers contributing to multiple git repositories and the VueJS app is powered by composition of those repositories.
The current Vue CLI tooling is perfect for building the VueJS app using a single repository. But what happens when there are modules from multiple repositories that going to be included. The current Vue ecosystem does not provides a direct answer to that problem.
The catch here is that you can’t treat those git repositories as other plugins or libraries out there and include it in your npm package file. It is a core dependency of the project which does not have any repeated code. We don’t want to maintain any versioning of those git repositories. We wanted a process that should be as simple as pushing code to those repos and triggering our deployment process on AWS.
Also, we have investigated a few tools like bit, lerna etc. but we felt those tools don’t fulfil our requirements exactly. All these tools require you to maintain a versioning for the packages and they bring a lot of overhead in the process. We wanted to build something that is flexible and should behave as plug and play inside our app.
We have created a small POC for that which we want to showcase to the audience there and hopefully we would get an immediate feedback on the approach we took. And if someone from the audience has a better approach or idea, we can discuss that as well and hopefully come to a conclusion where we can come up with a generic framework which solves this problem.
The talk would then end with the feedback discussion and then we plan to publish a blog on our website with all the key takeaways and would go ahead to make the framework open source.
Let us know if you guys agree that we can set this as a topic for one of the talks on the VueDay 2019. We would really like to share this problem and solution with everyone.
We also want to share our experience in building a fully functional product along with our own UI library from the scratch in 3 months using VueJS. If the entries are still open, we can get back to you with this and a few more ideas that our team wants to share.
- First we want to discuss the problem as explained in the abstract.
- We want to show our POC which we built inhouse.
- We want to take feedback and suggestions from the audience if this is best way and if they ever faced this problem and how did they solved it.
I am working as UI engineer in CommerceIQ and have around 6 years of experience in building UIs for apps and websites.
Our team presenting will be the best to present because we have faced the problem and built the solution inhouse.