Skip to content
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

WASM instance for docs site #129

Open
kelvinmwinuka opened this issue Sep 20, 2024 · 4 comments
Open

WASM instance for docs site #129

kelvinmwinuka opened this issue Sep 20, 2024 · 4 comments
Labels
documentation Improvements or additions to documentation good first issue Good for newcomers

Comments

@kelvinmwinuka
Copy link
Collaborator

Run an EchoVault instance in WASM on the docs site. The goal is to allow the user to run commands in the browser instead of only having hard-coded code examples.

Ideally, we should be able to serve this through GitHub pages. If this proves to be too much of a challenge, we can deploy the docs to an alternative platform.

@kelvinmwinuka kelvinmwinuka added documentation Improvements or additions to documentation good first issue Good for newcomers labels Sep 20, 2024
@osteensco
Copy link
Contributor

I'd like to take a crack at this.

@kelvinmwinuka
Copy link
Collaborator Author

Go for it @osteensco

@osteensco
Copy link
Contributor

osteensco commented Jan 21, 2025

So it looks like because we have dependencies (specifically, boltdb/bolt and hashicorp/go-sockaddr) that utilize system calls we can't compile a wasm instance of sugardb. We could set up a sandboxed instance on the backend potentially. This means we either:

  1. Host on something other than github pages.
  2. Set it up as a microservice.

For option 2, I'm not super well versed in security best practices so I'm not sure how secure we can make it so that we aren't exposing endpoints to the client directly. My guess is we'd need a reverse proxy of some kind?

@kelvinmwinuka
Copy link
Collaborator Author

Ok let's park this for now. I will want aware about this WASM limitation. I think option 1 would be the best way to do this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

2 participants