element-hq / element-hq/element-web
Browser WebExtension with Native Messaging as alternative to Electron
- Dominant language
- TypeScript
- Stars
- 13.5k
- Forks
- 2.8k
- PR merge metrics
- PR metrics pending
Description
**Is your suggestion related to a problem? Please describe.**
Personally I prefer running web apps in my browser of choice, which is not possible with apps that are powered by Electron. Running in the browser also has several benefits like
- let apps share the system resources of one active browser
- allows grouping apps into pinned tabs or windows
- easily use other WebExtensions in combination, like e.g. Stylus to modify CSS
Using Element Web as is however comes with a set of limitations, namely it doesn't provide search in encrypted rooms (seshat) or storing of pickle keys into OS secure storage (keytar).
**Describe the solution you'd like**
To get those features that rely on native code into the browser world, something that can be done is using a [WebExtension](https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions) that talks via [Native messaging](https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Native_messaging) with a executable on the host through stdio.
When trying to use a functionality that normally is restricted to Element Desktop, like when searching in an encrypted room, Element Web could offer instructions to install the WebExtension along with the native messaging host binary.
**Describe alternatives you've considered**
Not aware of alternatives yet.
**Notes**
This might also be interesting in combination with the PWA or even bundling Element Web itself as WebExtension.
Contributor guide
Assessment
This issue has not been assessed yet.