|
22 | 22 | - Vue.js 3 |
23 | 23 | - Nuxt.js (easy routing, state management, plugins etc) |
24 | 24 |
|
| 25 | +Criteria, results by @sverhoeven: |
| 26 | +- first page loads quickly |
| 27 | + * nuxtjs: out of the box with static deployment (pre rendered) |
| 28 | + * vue js: slower with https://router.vuejs.org/guide/advanced/lazy-loading.html |
| 29 | +- seo |
| 30 | + * nuxtjs: out of the box |
| 31 | + * vuejs: a plugin away https://vue-meta.nuxtjs.org/, but requires search indexer to run JS |
| 32 | +- only want static hosting, no nodejs server of lambda functions |
| 33 | + * both OK |
| 34 | +- least amount of moving parts that I have to maintain |
| 35 | + * In vuejs all direct deps need to be kept up 2 date, while in nuxtjs most are indirect deps |
| 36 | + * vuejs+our direct deps is less complicated then nuxtjs |
| 37 | +@verhoeven prefers to start with Vue.js and if not performant or if we are recreating nuxt then switch to Nuxt.js. |
| 38 | + |
25 | 39 | ### UI Framework (TBD) |
26 | 40 | - Vuetify.js |
27 | 41 | - Quasar |
28 | 42 | - Primer.css (from GitHub) |
29 | 43 | - Tailwind.css |
30 | 44 | - Buefy |
31 | 45 |
|
| 46 | +Criteria, results by @sverhoeven: |
| 47 | +- supports vue3 |
| 48 | + - primer.css has no support for vue3 |
| 49 | + - Tailwind.css only vue2 |
| 50 | +- has stepper widget which can be configured to our design |
| 51 | + - vuetify3 has no stepper, while veutify2 does |
| 52 | + - quasar has vertical stepper, however example shows single column design instead of 2 stepper + form page |
| 53 | + - primer.css no stepper |
| 54 | + - Tailwind.css no stepper |
| 55 | + - Buefy has vertical stepper |
| 56 | +- can be themed to make own branding |
| 57 | + - they all can, some more than other |
| 58 | +@verhoeven prefers to use quasar |
| 59 | + |
32 | 60 | ### State management |
33 | 61 | - vuex |
34 | 62 | - Vue 3 / Nuxt composition API |
|
40 | 68 | - GitHub.io page |
41 | 69 | - Do we want a custom domain? |
42 | 70 |
|
| 71 | +@verhoeven prefers to use GH pages |
| 72 | + |
43 | 73 | ### Language |
44 | 74 | - Typescript |
45 | 75 |
|
46 | 76 | ### Schema validation (TBD) |
47 | 77 | - AJV |
48 | 78 | - JSON schema --> Typescript convertion |
49 | 79 |
|
| 80 | +@sverhoeven prefers to use both, |
| 81 | + AJV for sanity check if generated YAML is OK |
| 82 | + jsonschema2ts for typing store |
| 83 | + |
50 | 84 | ### CSS flavor |
51 | 85 | - CSS |
52 | 86 |
|
53 | 87 | ### YAML syntax higlighting (TBD) |
54 | | - - prism.js |
55 | | - - highlight.js |
| 88 | + - prism.js |
| 89 | + - highlight.js <- preferred by @sverhoeven, more downloads, more GH stars, more vue wrappers, can be themed to match UI framework |
| 90 | + |
56 | 91 |
|
57 | 92 | ### Testing: |
58 | 93 | - Unit testing |
|
68 | 103 |
|
69 | 104 | ### Commit hooks |
70 | 105 | - GitHook |
71 | | - - Husky |
| 106 | + - Husky <- preferred by @sverhoeven, due to popularity and easy of maintenance (config easier to maintain then shell script) |
72 | 107 |
|
73 | 108 | ### Artwork |
74 | 109 | - icons (TBD) |
|
0 commit comments