Description
We want the service worker gateway to be super lightweight.. in order to do that we should remove react and make sure we have a very easy to understand and legible codebase that doesn't require transpilation or minification.
While this issue will likely be open for a long time, there are a large number of tasks that can be done to chip away at this goal:
- no config page viewing on subdomains
- 504, unknown-fetch-error, no-service-worker-error, and origin isolation warning pages should be in their own .html file in /public and not require react at all.
- remove react routing that waits for react to be fully loaded to determine which page to render
- All error pages (504, unknown error during fetch) should:
- unregister the service worker
- link to root domain config (it's on the landing page) to allow users to adjust things
I think we should still have react on the landing page because it will make development much more maintainable, but by completely separating the content retrieval and verification from the UI and react code, it will be much easier for users to verify and audit that the content they are getting is what they expect, without having to dive through a complex react ui codebase to do so.
This is mostly done with #773 and #782 (e.g. #785), but there is a lot of react that can be removed and migrated to lighter-weight javascript.