Skip to content
/ sandstone Public
forked from ading2210/sandstone

An experimental web proxy utilizing sandboxed iframes and no service worker.

License

Notifications You must be signed in to change notification settings

3kho/sandstone

 
 

Repository files navigation

Sandstone

Sandstone is an experimental web proxy utilizing sandboxed iframes with no service worker.

Features

  • Every proxied page runs in a sandboxed iframe
  • Can be used from an HTML file or as a data URL
  • Does not use service workers
  • Does not use JS rewriting
  • Only client dependency is libcurl.js

Site Support

  • Discord
    • The login page does work, but not the captcha
  • Most static sites

Status

This is at a very early stage of development and lacks support for most web APIs.

Working Features

  • Fetch API
  • Basic javascript
  • Local storage
  • Web workers
  • XMLHttpRequest
  • Media elements such as <img>
  • CSS rewriting
  • Anchor tags
  • HTML redirects
  • HTML forms

Notable Unimplemented Features

  • Cookies
  • ES6 modules

Usage

Building

  1. Clone this repository and cd into it.
  2. Run npm i to install the dependencies.
  3. Run npm run build:prod to bundle the client JS. You may also use npm run dev.

Running the Example Frontend

  1. Cd into the example subdirectory
  2. Run npm i to install the server dependencies
  3. Run npm run start which will start the web server

License

ading2210/sandstone - A web proxy using sandboxed iframes 
Copyright (C) 2024 ading2210

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.

About

An experimental web proxy utilizing sandboxed iframes and no service worker.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 95.8%
  • HTML 2.7%
  • CSS 1.5%