Skip to content

feat: Timeline extension #2668

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 20 commits into from
Closed

Conversation

Hywan
Copy link
Member

@Hywan Hywan commented Oct 5, 2023

WIP, WIP, WIP. Don't take a look at this for the moment.

To Do

Runtime

First off, we need to be able to run a Wasm module. On all platforms, it's done with wasmtime. On iOS, it's done with JavaScriptCore.

For Wasm component model and WIT support, we use wasmtime built-in API, and JCO for JavaScriptCore. Contributions to those projects:

Permissions

  • Scan the imports of the Wasm modules to detect permissions
  • Design a simple permissions system (which permissions are allowed or not)

ABI

To Do items aren't defined yet, but roughly:

  • Define unique ABI that can be used from wasmtime and JavaScriptCore
  • Define basic ABI for:
    • Timeline manipulation
    • network requests
    • key/value storage

Plug into the Matrix SDK

  • Use the event handler API to plug the extensions

@Hywan Hywan force-pushed the feat-timeline-extension branch from 14da4bd to 4016a7f Compare October 12, 2023 10:34
@Hywan Hywan force-pushed the feat-timeline-extension branch from 7e57f59 to fd1a6e7 Compare November 9, 2023 09:10
@Hywan Hywan closed this Dec 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants