Go to file
Bruno Windels b3095112cd build bundled version
no es6 modules on lumia
2019-06-23 23:38:30 +02:00
doc update viewhierarchy doc 2019-06-16 16:41:17 +02:00
prototypes refine ui prototype and document planned view hierarchy 2019-06-15 01:36:52 +02:00
scripts add non-caching server for local dev 2019-02-16 02:57:19 +01:00
src load more events when scrolled to top 2019-06-16 17:29:33 +02:00
.editorconfig wip 2019-02-17 23:58:01 +01:00
.eslintrc.js its syncing, sort off 2019-02-10 21:25:46 +01:00
.gitignore add non-caching server for local dev 2019-02-16 02:57:19 +01:00
index-build.html build bundled version 2019-06-23 23:38:30 +02:00
index.html apply css from prototype, other small changes, keep scroll at bottom 2019-06-16 15:21:20 +02:00
package-lock.json rename morpheus to brawl 2019-06-14 23:58:39 +02:00
package.json build bundled version 2019-06-23 23:38:30 +02:00
README.md rename morpheus to brawl 2019-06-14 23:58:39 +02:00
rollup.config.js build bundled version 2019-06-23 23:38:30 +02:00
yarn.lock build bundled version 2019-06-23 23:38:30 +02:00

Brawl

A javascript matrix client prototype, trying to minize RAM usage by offloading as much as possible to IndexedDB

Status

Syncing & storing rooms with state and timeline, with a minimal UI syncing room list and timeline on screen. Filling gaps supported, detecting overlapping events. The [0/1] in the gif below is the local event key, consisting of a fragment id and event index. No sending yet. Using Fractal here to update the room name and send messages:

Rooms and timeline syncing on-screen, gaps filling

Features that this approach would be well suited for

  • store all fetched messages, not just synced ones
  • fast local search (with words index)
  • scroll timeline with date tooltip?
  • jump to timestamp
  • multi-account