Skip to content

[meta] Client refactor or rewrite #894

Open
@ix5

Description

@ix5

Currently, the client is heavily DOM-dependent and written in ES5-compatible syntax.
Testing - although some great improvements with Jest and puppeteer have been made - is still hard to do.

We cannot currently make use of real Promise or await functionality and other ES6 goodies. The justification for sticking with older source code syntax has been laid out in #834, but this is not official policy but rather the opinion of 1 maintainer, subject to change.

Things to think about:

  • Compatibility with older browsers
  • Increasing complexity of developer setup (installing too many packages, handling too many configs)
  • Notoriously unreliable and insecure JS/npm ecosystem
  • Bundle size
  • Performance with many comments, memory leaks when leaving page open (setTimeout)
  • Single-Page-Applications (SPA) and carrying state

New or improved features

See also

Metadata

Metadata

Assignees

No one assigned

    Labels

    client(Javascript) client code and CSSmetaConcerning the general direction and organisation of the projectneeds-decisionArchitectural/Behavioral decision by maintainers needed

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions