action #156340
open
coordination #154768: [saga][epic][ux] State-of-art user experience for openQA
coordination #154771: [epic] Improved test developer user experience
Evaluate the use of state-of-the-art web development frameworks to simplify our stack, e.g. alpine.js, vanilla CSS nesting size:S
Added by okurz 8 months ago.
Updated 25 days ago.
Category:
Feature requests
Description
Motivation¶
In openQA we have some JavaScript code with no good unit tests and multiple outdated dependencies. Before doing the hard job of implementing unit tests or significantly updating our stack we should evaluate what's new as of year 2024 and decide if we should use new approaches in some cases.
Acceptance Criteria¶
- AC1: It is known if one or multiple frameworks would simplify our code and/or unit tests
- AC2: Follow-up task have been reported
Suggestions¶
- Look into alpine.js and try to apply it for openQA
- Look into vanilla CSS nesting and try in a draft openQA pull request, potentially also qem-dashboard
- Look into native JavaScript modules
- Might be worth looking at (perhaps somewhere in a different epic) is openAPI, gRPC (or a combination, taking into account we're heavy users of WebSockets though), Open API uses a lot of yaml :D so of course there are tradeoffs, but would help with proper API versioning.
Especially looking at decoupling os-autoinst's command server with the intention of being able to generate native testapi bindings for other languages
Out of scope¶
- Complete transformation of existing features using new tooling. Just identify and report as separate tickets
- For htmx in particular follow #156055
- For replacing jQuery.ajax with fetch see #166310
+10000 For htmx - https://htmx.org/examples/
Might be worth looking at (perhaps somewhere in a different epic) is openAPI, gRPC (or a combination, taking into account we're heavy users of WebSockets though), Open API uses a lot of yaml :D so of course there are tradeoffs, but would help with proper API versioning.
Especially looking at decoupling os-autoinst's command server with the intention of being able to generate native testapi bindings for other languages
- Subject changed from Evaluate the use of year 2024 web development frameworks to simplify our stack, e.g. alpine.js, htmx, vanilla CSS nesting to Evaluate the use of state-of-the-art web development frameworks to simplify our stack, e.g. alpine.js, vanilla CSS nesting size:S
- Description updated (diff)
- Status changed from New to Workable
- Target version changed from Tools - Next to Ready
- Related to action #156055: [research][timeboxed:20h] Evaluate if https://htmx.org/ can simplify and reduce what we have defined as procedural javascript code, jquery leftovers, etc. size:M added
- Status changed from Workable to In Progress
- Assignee set to livdywan
I'll give this a go and see if I can put ideas into follow-up tickets.
- Due date set to 2024-09-07
Setting due date based on mean cycle time of SUSE QE Tools
- Status changed from In Progress to Workable
- Description updated (diff)
- Related to action #166310: Replace jquery ajax calls with fetch API size:M added
- Due date deleted (
2024-09-07)
- Assignee deleted (
livdywan)
- Priority changed from Normal to Low
- Target version changed from Ready to Tools - Next
Also available in: Atom
PDF