Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/stoically/radical-native
Extending Element (Riot Web) with native capabilities
https://github.com/stoically/radical-native
element firefox matrix riot webextension
Last synced: 5 days ago
JSON representation
Extending Element (Riot Web) with native capabilities
- Host: GitHub
- URL: https://github.com/stoically/radical-native
- Owner: stoically
- License: mit
- Archived: true
- Created: 2020-02-13T16:16:03.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2021-08-12T05:17:54.000Z (about 3 years ago)
- Last Synced: 2024-08-02T12:49:35.276Z (3 months ago)
- Topics: element, firefox, matrix, riot, webextension
- Language: Rust
- Homepage:
- Size: 999 KB
- Stars: 33
- Watchers: 3
- Forks: 4
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-starred - stoically/radical-native - Extending Element (Riot Web) with native capabilities (firefox)
README
# Radical Native
[![Radical Native Matrix room #radical-webext:matrix.org](https://img.shields.io/badge/matrix-%23radical--webext%3Amatrix.org-blue)](https://matrix.to/#/#radical-webext:matrix.org)
Extending [Riot Web](https://github.com/vector-im/riot-web) with native capabilities
#### Features
- [x] Search functionality in encrypted rooms using [seshat](https://github.com/matrix-org/seshat)
- [x] Secure OS key storage for pickle keys using [keytar](https://github.com/atom/node-keytar)
- [ ] OS global keyboard shortcuts (e.g. push to talk)
- [ ] Tray icon#### Supported Browsers
- [x] Firefox
- [ ] Chrome## Install
### 1. Radical Native
- Ubuntu/Debian: [`.deb`](https://github.com/stoically/radical-native/releases)
- Arch: [`AUR`](https://aur.archlinux.org/packages/radical-native-bin/)
- MacOS: [`.pkg`](https://github.com/stoically/radical-native/releases)
- Note: Requires Ctrl+Click on the `.pkg` since the installer isn't signed yet
- Windows: [`.exe`](https://github.com/stoically/radical-native/releases)Hint: The event store is saved into the `radical-native` directory inside your [local user data directory](https://github.com/soc/dirs-rs#features).
### 2. Radical Native Add-on
- Firefox: [`.xpi`](https://github.com/stoically/radical-native/releases)
The Radical Native Firefox Add-on facilitates the communication between Riot Web and the Radical Native Binary.
## Usage
- Open any Riot website in your browser
- Click the Radical Native icon in the toolbar (RAM icon)
- Riot website should reload and the toolbar icon should have an "on" badge
- Check Riot's "Settings > Security & Privacy > Message search > Manage", it should show ongoing work## Troubleshooting
- Try to execute the `radical-native` binary directly - it should respond with "ready: true"
- Check the Radical Native Add-on console for error logs: `about:debugging#/runtime/this-firefox` > Radical Native Inspect
- If indexing gets stuck you can safely disable and enable it in the "Manage" dialog## Development
- `cargo install cargo-watch`
- Ubuntu/Debian: `apt install libsqlcipher0 libsqlcipher-dev libsecret-1-dev`
- MacOS: `brew install libsqlcipher````
npm install
npm run dev
```### Firefox
- Load the build located in `build/firefox` as Temporary Add-on via
`about:debugging#/runtime/this-firefox`### Chrome
- Load the build located in `build/chrome` as Unpacked extension via `chrome://extensions/`
## Tests
```shell
# watcher
npm run test:watch# once
npm run test# once & coverage
npm run test:coverage
```## Attribution
Icon made by [Freepik](https://www.flaticon.com/authors/freepik) from [www.flaticon.com](https://www.flaticon.com/)