Giter Site home page Giter Site logo

baseless's Introduction

Currently this is just a server that can proxy all content from any website through a single origin, cache it for offline use, and allow users to activate the X-Ray Goggles on any page.

It's the beginning of a more wide-ranging experiment in offline webmaking, though.

Quick Start

npm install
node app.js

Then visit http://localhost:3000/ in your browser.

Use cases

  • Configured as a browser's proxy server for accessing offline content.
  • Accessing all content in a webpage via a single, unrestricted origin (bypassing same-origin security restrictions, X-Frame-Options/CSP/CORS headers, and so forth).
  • Configured with an appcache manifest to allow a mobile browser to access content offline.
  • Blocking third-party tracking services without requiring browser configuration.
  • Allowing anyone to localize any website without needing to ask for permission.
  • Creating "standalone" X-ray Goggles remixes.
  • Throttling (e.g. for net neutrality simulation)
  • Making browsing collaborative, e.g. using TogetherJS
  • Doing things that addons or bookmarklets normally do, but on the proxy-side, e.g.
    • parental controls
    • content filtering
    • adding webmaker "hooks" to e.g. every image
    • presenting page assets in a completely different way

References

  • The Webmaker Field Research Report - Bangladesh mentions that data is slow and costs lots of money, so most people either use the apps that came preloaded with their phones, or they manually transfer them from their friends' storage devices.
  • Lots of anecdotal evidence from Hive organizations that need to hold events in places with spotty or nonexistent wi-fi.
  • The Cuba's underground alternative to the internet segment on Spark describes how many Cubans use a massive hard drive containing an image of the internet's most popular sites.
  • The If the kids don't have wi-fi... segment on Spark describes how strategically-parked school buses are delivering wi-fi to students that don't have it at home.
  • Bug 1036975, "Content Security Policy breaks Webmaker's X-Ray Goggles"

Environment Variables

Note: When an environment variable is described as representing a boolean value, if the variable exists with any value (even the empty string), the boolean is true; otherwise, it's false.

  • DEBUG represents a boolean value. Setting this to true makes the server always regenerate bundled source code every request, among other things.

  • PORT is the port that the server binds to. Defaults to 3000.

  • USERPASS is an optional setting of the form username:password. If set, the entire server is protected by HTTP Basic Authentication and requires the given username and password to access.

baseless's People

Contributors

toolness avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.