mozilla / tofino

Project Tofino is a browser interaction experiment.
https://mozilla.github.io/tofino
Apache License 2.0
647 stars 68 forks source link

Make Tofino run as an unprivileged web app #1576

Closed ncalexan closed 7 years ago

ncalexan commented 7 years ago

This ticket tracks making Tofino run in an existing browser (Firefox, Chrome, Safari, Edge, ...) as an unprivileged web app. That is, you might navigate to https://tofino.mozilla.com or file:///tofino.html and have a mostly functional Tofino UI inside your existing browser.

ncalexan commented 7 years ago

We discussed this briefly in Slack:

nalexander: jsantell what would it take to get Tofino running as a web app?
jsantell: nalexander run as in actually work, or just render mostly?
nalexander: jsantell either or both.  How about just render for now?  Do we have tickets tracking jsantell: swap out webviews for iframes, add something to handle the ipc calls (maybe just stub out)
jsantell: any node api's used have web-versions available (webpack/browserify handle these)
jsantell: last time i tried, there were issues in firefox due to some ES features (like `for (const x of array){}` or maybe `let` only works in chrome) that we didn't anticipate
victor: those can be babeled
victor: main issue is using native node modules in the content process 
victor: and the webview element
victor: webview can become iframe if we [don't care] about security 
victor: and native node modules can go, probably
jsantell: victor what native modules are used in content? there was some logging thing but that would just silently break
victor: i’d just remove logging altogether and use console.log
victor: screw stuff we don’t /really/ care about
victor: there’s a few other things like os-level menus, but again, can ignore those
victor: prolly a couple of weeks of work to get a barebones tofino working as a webpage
jsantell: yeah context menus would break without ipc, and using iframes

From this conversation, it sounds like the main things are:

victorporof commented 7 years ago

Dupe of https://github.com/mozilla/tofino/issues/905