Vue.js
Vue.js guidelines.
Templates/Components
Vue components must be implemented in the native *.vue files. No TSX or JSX.
Core Components
Core Components like Buttons etc. should be externalized into a small Vue component. This is especially important if you use Tailwind CSS.
This is important to reduce redundant style information and to increase maintainability.
Scripts
The dynamic part of a component (the script element) must be implemented in typescript.
Universal code
All script elements should be implemented in "universal code" so all code should run on client and server side.
Try to use libraries that handle this, so you dont have different implementations for client and server side.
Events
Warning
If you register global events on window or document, you have to take care that you deregister the events on client site routing.
External libraries
External libraries must respect our Frameworks and Libraries Guideline.
Used libraries must be included via webpack (or equivalent tools) if possible.
Modularization
Large Vue Apps must be split into multiple modules to improve page loading time.
Deployments
Vue Apps must be containerized using Docker so it can run on Kubernetes. More Details on this will follow, if needed in advance please contact Sandra.Brandstaetter@egger.com