Giter VIP home page Giter VIP logo

transgress's Introduction

Transgress

Please Note: This is not a finished product yet, scroll down to the bottom to find out how you can help!

The ones who most need to access trans-related services and information, the most vulnerable among us, are often the ones with the least access to these sites. As governments and public networks begin to add content filtering services to their open networks, transient trans people and trans youth who have not come out find their access to critical resources dwindling. Many content systems overzealously block sites even tangentially mentioning trans people or the issues they face. When sites offering information that could help ease a person’s sense of isolation or suffering are blocked, it directly impacts their safety in a very real sense.

Transgress is a simple, easy-to-use proxy service that allows people to access sites that are relevant to trans people. It requests a site from an unfiltered location, checks to see if it is relevant to trans issues, replaces any potentially flagged words, and sends the page on to the requester. In addition to the standard content of the page, a javascript file is also included, that, upon the page loading completely, repairs the word replacements, restoring the content to its original state. Any links and content that is part of the site being browsed, is also run through transgress, so you should be able to browse, as normal, without worrying about any technical details.

Built into the system is a relatively simple content checking service. If a site does not appear to be related to trans issues and people, the page served up will be a simple page describing the fact that this service should not be used for unintended purposes. This should hopefully prevent the service from being flagged by content filter providers as potentially problematic. It is my hope, that if this service is flagged, that another instance can be created for continued public usage. Furthermore, such a banning could be a jumping off point to begin discussing with these providers about how these services can harm already disadvantaged people, and create a dialogue for balancing security and safety in a responsible manner.

How YOU can help

It is my hope that Transgress will continue to develop to become increasingly robust so that those who need the resources available on the internet can access them in a safe and convenient way.

Feel free to contact the maintainers of this project by opening an issue in the github repo located at github.com/Valarissa/transgress

Pull requests are also, not only welcome, but actively encouraged!

If you know quite a bit about cross-site scripting, I’d love to talk to see if it would be possible to address certain XSS issues currently present. If you want some additional feature of some sort, by all means, create an issue and we’ll talk about the potential of adding it!

Adding a new term to search for or replace is INCREDIBLY easy. Just add things to github.com/Valarissa/transgress/blob/master/public/assets/string_list.json and send the additions as a pull request. That’s it. SUPER simple. With a few more additions to the JS code and some changes to the views, this project will be working as it’s intended.

Development

Getting started—first time set up

  • Check out source code.

  • Set up your ruby environment.

    There are many options for installing the version of ruby used by this project (currently 2.1.0). Here’s how to do it with rbenv:

    rbenv install
    

    See also docs for rbenv, RVM, chruby

  • Install gems.

    gem install bundler
    bundle install
    

Starting the app

bundle exec rackup

Open localhost:9292 in your browser.

transgress's People

Contributors

valarissa avatar binarycleric avatar danmidwood avatar

Watchers

James Cloos avatar Alla Hoffman 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.