This is a follow up to VueJS In Tiki
Some more dev notes about the next stages for VueJS integration for discussion at TikiFest Virtual 2021
The Story So Far
In Tiki 21 "we" introduced a minimal inclusion of Vue.js using Single File Components and a pre-compiled version of Vue.js to avoid creating a new dependency on node.js (and associated javascript tools) which Tiki has, historically, not used.
Initially in 21.x Tracker Field Rules was added using ui-predicate. Since then the Duration Tracker Field has been added in 22.x but that's all, I think.
The Next Steps
For the future I think we should bite the bullet (or at least discuss) adding a way to do this within Tiki, possibly by adding a new set of commands to console.php
to manage the environment in a consistent way, similar to how we have integrated LESS
and now SCSS
for CSS compilation.
If we are to extend the use of Vue.js in Tiki (which I believe we should - see also Project Fluffy) having a full development environment will be essential. Also this should help refactor and modernise our sprawling JavaScript code-base.
Some Points for Discussion
- Upgrade to Vue.js 3.x?
- Integration with Smarty, or do we add another templating system for this?
- Replacement of jQuery-UI (Sortable/Draggable, date/time pickers mainly)
- Replacement of jQuery completely one day?
- Add more here...
(p.s. a couple of half finished experimental branches from a few months ago can be found here and here)