andersevenrud/xpra-html5-client

Tracking issue for v2

andersevenrud opened this issue · 0 comments

This was moved from the README file.

⚠️ Please note that rendering is a little bit broken at the moment because the current draw queue implementation is not finished. This might lead to frame drops and freezing on certain draw calls.

⚠️ Expect breaking changes. These will be documented in the changelogs.

General

  • Monorepo
  • Workspaces
  • Separate library builds
  • Introductory documentation
  • API documentation
  • Demo site
  • Licensing
  • Code style standards
  • Commit message standards
  • Complete type definitions
  • Unit tests
  • npm package

CI

  • LGTM (linters, tests, etc.)
  • Github pages
  • Releases
  • Code coverage reports

Third party libraries

  • Broadway
  • JSMpeg
  • Aurora (AV)

Xpra

  • Connectivity
  • Authentication
  • Encryption
  • Capability detection
  • Packet decoding and proxying
  • Error handling
  • Window handlers
  • Cursor handlers
  • Sound handlers
  • Keyboard handlers
  • Mouse handlers
  • Notifications
  • Clipboard
  • Download/Upload
  • Print
  • Remote logging
  • Bell
  • Tray

Workers

  • Web Worker
  • Null Worker
Off-load queues
  • Send
  • Recieve
  • Decode
  • Audio

Rendering

  • Direct rendering
  • Offscreen canvas
  • Native ImageDecoder support
  • Native createImageBitmap support
  • Native VideoDecoder support
  • Fully synchronized rendering queue based on given sequences

Formats

  • PNG/JPEG/WebP
  • RGB32/RGB24
  • AVIF
  • MPEG1
  • MPEG4
  • h264
  • VP8
  • Void
  • Scroll

Encoders

  • bencode / dencode
  • rencodeplus / rdecodeplus
  • rencodelegacy / rdecodelegacy

Compression

  • lz4
  • zlib
  • brotli

Digests

  • hmac-s w/forge
  • xor
  • keycloak

UI

  • On-screen keyboard
  • Client-side scaling
  • Suspend/resume windows
  • Fullscreen windows
  • Desktop class back layers
  • Connection options via URL query
  • Connection settings modal
  • Window management
  • Window interaction
  • Cursor support
  • XDG Menu
  • Tray
  • Dark Mode support