Coder Social home page Coder Social logo

nemesisqp / node-adblock-proxy Goto Github PK

View Code? Open in Web Editor NEW
5.0 2.0 18.0 680 KB

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

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

  • With a few hours on Facebook, reddit, stackoverflow, it uses this amount of memory (whilst having over 20k blocked hosts and urls with n rulesets):

Screenshot #01

  • And yes, 15MB is way less than a couple GB memory usage of an AdBlock Plus Web Browser extension.
  • 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 start.js 8080; # will start a proxy on (defaulted) port 8080

Features

  • HTTP Proxy
  • Host config files support (aka /etc/hosts)
  • Adblock Plus filter list support ("without element hiding")
  • Incremental cache updates for changed files in ./adblockplus.d, ./host.d or ./json.d

Work-in-progress (aka still not working)

  • SOCKS5 Proxy
  • Asynchronous cache file database for faster restart
  • Support for JSON config files
  • Support for AdBlock Plus filter rulesets, based on their fucked up RegExp system

Usage

Ubuntu (Gnome Shell)

  • Start the Proxy (as shown in Installation)
  • Go to System Settings > Network
  • Click on Network Proxy on the left side
  • Select Method Manual and use 127.0.0.1 as IP and 8080 as port

If you started the Proxy setting a different port, please change that accordingly.

Screenshot Gnome Shell

TODO: Other Operating Systems

Documentation about setup on other Operating Systems. Contributions welcomed.

node-adblock-proxy's People

Stargazers

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