GithubHelp home page GithubHelp logo

jqk6 / adblock-proxy Goto Github PK

View Code? Open in Web Editor NEW

This project forked from nemesisqp/node-adblock-proxy

0.0 3.0 0.0 3.62 MB

NodeJS Proxy for blocking adverts on the interwebz (with support for Adblock Plus filter lists and /etc/hosts files)

License: Do What The F*ck You Want To Public License

JavaScript 93.97% Shell 6.03%

adblock-proxy's Introduction

NodeJS AdBlock Proxy

NodeJS Proxy for blocking adverts on the interwebz (with support for Adblock Plus filter lists and /etc/hosts files). This project aims to make the interwebz even moar awesome!

Why using a NodeJS based AdBlock Proxy?

  • It's blazing fast. Seriously, forget other Proxy implementations.
  • It's written in JavaScript !!!!111eleven.
  • A few hours on Facebook, reddit, stackoverflow uses around 15MB amount of memory (whilst having over 20k blocked hosts and urls with n rulesets):
  • If you still don't believe it, get over it and use something else. I don't care.

License

This project is released under the WTFPL. See the LICENSE.md for details.

Installation

Note: You can change the suggested installation folder to whereever you want to install it. Just make sure you change the paths in the bash commands accordingly.

  • Download and install the newest available stable release of NodeJS from nodejs.org.

  • Download this project via zip-file and extract its contents to /opt/adproxy.

  • Navigate to the folder in your Shell (or PowerShell) and execute:

cd /opt/adproxy; # change if you used a different folder
nodejs ./bin/proxy; # will start a proxy on defaulted settings (localhost:8080)

Settings

If you want to use customized parameters, these are the supported parameters and their functionality:

  • --host= where ip is an IPv4 or IPv6 address (e.g. 192.168.0.1)
  • --port= where port is a valid port number (e.g. 8080)
  • --public=true will allow using the proxy from other hosts (defaulted). Use --public=false to only allow connections using the given ip.
  • --protocol=http will spawn an HTTP based proxy. Supported protocols are http, socks5.
# Example usage of customized parameters
nodejs ./bin/proxy --host=192.168.0.1 --port=8080 --public=false --protocol=http

How To Use

Read the USAGE.md file on How to Use. It has fancy screenshots and stuff, you'll like it :)

Features

  • HTTP Proxy
  • Host config files support (aka /etc/hosts)
  • Adblock Plus filter list support ("without element hiding")
  • Use the ./update.sh (requires wget) to update all filter lists from predefined sources.

Work-in-progress (aka still not working)

  • HTTPS Proxy (automatic SSL certificate issueing, maybe via sniffing (aka nulling bug))
  • SOCKS5 Proxy
  • Support for ABP rules with $variable identifiers (requires HTML code parsing, which would slow down proxy)

adblock-proxy's People

Contributors

martensms avatar shouko avatar

Watchers

 avatar  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.