GSoC 2021 Work Product Description for Hydrogen

Hi 👋,

This blog post provides a summary of my net contributions to Hydrogen during the 10 wonderful weeks that were GSoC ‘21.

Expected deliverables

The general intention of my project was to build a right-panel with various
information that could be accessed via the room-menu.

More specifically, the goals were to implement:

  • Room Information Panel
  • Memberlist Panel
  • Member Information Panel
  • Share Room View Single Sign-On
    My mentor (Bruno) correctly suggested that I attempt to implement SSO instead because that had greater utility.

Deliverables successfully delivered

  • Room Information Panel (#365)
    Shows room avatar, encryption status, current member count.
  • Memberlist Panel (#395, #404)
    • Sorts alphabetically taking powerlevels into account
    • Disambiguates users with same display name
    • Lazy renders items
    • Updates in place
  • Member Information Panel (#412, #417, #432, #447)
    Shows member avatar, name, powerlevel and provides a matrix.to invite link to that member.
  • Single Sign-On (#453)
    Allows users to sign-in to supported homeservers using their existing credentials from other platforms (eg. Github).

Other Contributions

  • Implemented functionality to render URLs as clickable links (feature request #246) (#345, 356).
  • Replaced ellipsis character for room menu with an actual svg icon (#369).
  • Fixed issues #402, #397, #218, #269.

Things Left To Do

  • Merge lazy-list enhancement PR
  • Retain the right-panel (if previously opened) when switching to empty-tile in grid-view

Others

Here is a list to all my commits on Hydrogen.