No description
Find a file
Bruno Windels 66a77519d7 implement key caching in KeyLoader
merging session cache into it so we can better manage and recycle
keys without exposing too low-level public methods on BaseLRUCache.

Using refCount instead of inUse flag as a key can of course be used
by multiple useKey calls at the same time.
2021-10-21 11:12:54 +02:00
.github/workflows disable ts lint on CI 2021-08-18 18:52:19 +02:00
assets Allow specifying a custom defaultHomeServer 2021-03-30 17:43:03 +01:00
doc remove user and password 2021-10-01 13:37:37 +02:00
prototypes add prototype to show we can prevent the txn from being aborted on error 2021-09-21 20:58:16 +02:00
scripts WIP 2021-10-20 11:39:01 +02:00
src implement key caching in KeyLoader 2021-10-21 11:12:54 +02:00
.dockerignore chore: optimise Dockerfile 2021-03-14 12:52:35 +01:00
.editorconfig wip 2019-02-17 23:58:01 +01:00
.eslintrc.js Undo lint config change 2021-06-14 22:43:42 +05:30
.gitignore tune linting so it doesn't produce errors anymore and enable in CI 2021-05-20 11:11:57 +02:00
.gitlab-ci.yml chore: add GitLab CI definition 2021-03-14 13:20:39 +01:00
.ts-eslintrc.js only enable promise related rules ... I think? 2021-08-18 18:52:06 +02:00
codestyle.md notes on codestyle 2020-11-20 16:39:16 +01:00
Dockerfile Required pkg for aarch64 docker build 2021-09-29 19:31:39 -07:00
Dockerfile-dev Required pkg for aarch64 docker build 2021-09-29 19:31:39 -07:00
LICENSE add full license text 2020-08-05 18:40:45 +02:00
package.json provide library entry point that provides convenient reexports of the public classes 2021-10-01 11:30:42 +02:00
README.md Ensured more subtleness in the readme file. 2021-04-30 13:40:10 +05:30
snowpack.config.js remove dead code for incomplete memory store 2021-08-24 15:33:41 +02:00
TODO.md WIP 2020-08-05 18:17:35 +01:00
tsconfig.json don't let tsc check build system specific files 2021-10-01 13:32:09 +02:00
yarn.lock add lint command for typescript 2021-08-18 17:20:31 +02:00

Hydrogen

A minimal Matrix chat client, focused on performance, offline functionality, and broad browser support. This is work in progress and not yet ready for primetime. Bug reports are welcome, but please don't file any feature requests or other missing things to be on par with Element Web.

Goals

Hydrogen's goals are:

  • Work well on desktop as well as mobile browsers
  • UI components can be easily used in isolation
  • It is a standalone webapp, but can also be easily embedded into an existing website/webapp to add chat capabilities.
  • Loading (unused) parts of the application after initial page load should be supported

If you find this interesting, come and discuss on #hydrogen:matrix.org.

How to use

Hydrogen is deployed to hydrogen.element.io. You can run it locally yarn install (only the first time) and yarn start in the terminal, and point your browser to http://localhost:3000. If you prefer, you can also use docker.

Hydrogen uses symbolic links in the codebase, so if you are on Windows, have a look at making git & symlinks work there.

FAQ

Some frequently asked questions are answered here.