Currently, I am working on developing a product that will be similar to popular live chat widgets like Intercom, Tawto, Drift, and Crisp. The main objective is to integrate a widget onto the user's website that will display a chat box. My plan is to utilize VueJS for this entire project.
Here are some of my initial thoughts:
We will provide users with an embeddable JS snippet that will insert a div into the body with an id of "app" or something similar. This script will then inject compiled VueJS code along with additional external scripts such as Socket IO and CSS libraries.
There are a few concerns that have come up:
Should I opt for building the project using CDN vue.min.js or use the CLI for compiling codes? Personally, I am more comfortable with the CLI option.
Is it possible to isolate the CSS libraries from the user's website by utilizing 'scoped' styles in VueJS?
If I choose the CLI version, will it still be functional on subdomains, inner pages, and links? As opposed to creating a full website, my aim is to develop a VueJS-powered widget for websites.