Project

General

Profile

Actions

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 10 months ago. Updated 3 months ago.

Status:
Workable
Priority:
Low
Assignee:
-
Category:
Feature requests
Start date:
2024-02-29
Due date:
% Done:

0%

Estimated time:
Tags:

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

Related issues 2 (0 open2 closed)

Related to openQA Project (public) - 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:MResolvedrobert.richardson

Actions
Related to openQA Project (public) - action #166310: Replace jquery ajax calls with fetch API size:MResolveddheidler2024-09-04

Actions
Actions

Also available in: Atom PDF