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 #1

Updated by szarate 10 months ago ยท Edited

+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

Actions #2

Updated by okurz 8 months ago

  • 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
Actions #3

Updated by okurz 4 months ago

  • Target version changed from Tools - Next to Ready
Actions #4

Updated by livdywan 4 months ago

  • 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
Actions #5

Updated by livdywan 4 months ago

  • 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.

Actions #6

Updated by openqa_review 4 months ago

  • Due date set to 2024-09-07

Setting due date based on mean cycle time of SUSE QE Tools

Actions #7

Updated by jbaier_cz 4 months ago

  • Status changed from In Progress to Workable
Actions #8

Updated by livdywan 4 months ago

  • Description updated (diff)
Actions #9

Updated by livdywan 4 months ago

  • Related to action #166310: Replace jquery ajax calls with fetch API size:M added
Actions #10

Updated by livdywan 3 months ago

  • Due date deleted (2024-09-07)
  • Assignee deleted (livdywan)
Actions #11

Updated by okurz 3 months ago

  • Priority changed from Normal to Low
Actions #12

Updated by okurz 3 months ago

  • Target version changed from Ready to Tools - Next
Actions

Also available in: Atom PDF