What is adzapper?
-----------------                                       
   adzapper is a filtering proxy that can block ads from being displayed
   on your web browser. instead of ad banners, you see blank spaces:
   adzapper transforms the ads into transparent gifs.
   
   The rules that describe what are ads and what are not ads are called
   "zaplets", and are configurable on a per-website basis. This way, when
   websites change their ads or their graphic design, it is easy to build
   and share new zaplets that block the ads.
   
   adzapper is based on ZServer, which is based on Sam Rushing's medusa,
   a very fast asychronous-sockets web-server written in Python. ZServer
   is single threaded, but this doesn't mean it is slow! in my experience
   it is one of the fastest, lightest webservers out there.
   

Requirements
------------
    
   adzapper is written in Python, and tested under Python 1.5.2 and
   RedHat Linux 6.2, Windows NT 4.0 (SP3), Windows 98, and Windows 95.
   It should also work on any Unix variant that has Python, but these 
   have not been tested. Please let me know if you have any problems, 
   and if you get adzapper running on a platform not listed here.
   
   You can find out more about Python at http://www.python.org/
   

Installing and using adzapper
-----------------------------
    
   For detailed installation and use instructions, see the file 
   README.Install.
   
   adzapper is a filtering proxy-- it sits between you and the Internet.
   You can install it on your own desktop machine or on a server
   somewhere else. When you click on a web link, your browser asks
   adzapper to get the file. adzapper only retrieves files that aren't
   ads; if there is a 'zaplet' file for the website you are visiting,
   adzapper uses the rules in the zaplet to decide what to display.
   Anything that the zaplet says is an ad is displayed as a tranparent
   GIF, and you don't have to look at it!
   

   Installation is different on Windows and Unix. Please follow the
   instructions for your platform.
   

Quickstart Guide for Windows
----------------------------

   Installation on Windows platforms now uses a self-installing exe file.
   Launch the installer, it will prompt you for the directory to install
   adzapper in. The installer will place an icon for adzapper in your
   Start/Programs menu, and on your desktop.
   
   To use adzapper, double-click the adzapper icon, and then adjust your
   browser's settings so it will use adzapper as a proxy server (127.0.0.1, 
   port 51966). 

   For more information see the file README.Install.


Quickstart Guide for Unix
-------------------------

   On Unix platforms, you will need a recent version of Python to run
   adzapper. Most Linux distributions already have it. If you don't have
   it or don't know, see the file README.Install for more information.
   
   To use adzapper, unpack the adzapper-x.y.z.tgz file into the place you 
   want to keep it, change to that directory, and run the 'install'
   script. install makes a shell script called 'adzapper' that will run
   the adzapper.py program, and places it in a directory you specify
   (default is /usr/local/bin). To run it, type 'adzapper' from the command
   line, or run it as a daemon using the 'adzapperd' script (if you ran
   'install-adzapperd').
   
   You will need to adjust your browser's settings so it will use adzapper 
   as a proxy server (127.0.0.1, port 51966). 

   For more information see the file README.Install.


Zaplets
-------
    
   Zaplets are small files that contain rules that describe what to block
   and what not to block. These rules are applied on a per-website basis,
   and are found in the zaplet/ directory where you installed adzapper.
   
   For more information on writing zaplets for your favorite site, go
   here.
   
   Send me your zaplets! Writing zaplets for sites you visit frequently
   helps you, and contributing them to the zaplet repository helps the
   zaplet community! If you send in your zaplets, other people benefit
   from your work. Zaplets you contribute will become part of the
   repository that is shipped with new versions of adzapper, and will
   also be made available for download separately.
   
   I'm not guaranteeing the zaplet file format will remain the same until
   the code becomes more stable, but I will add contributed zaplets to
   the repository, and I will convert these zaplets to a new format if
   the format changes.
   
   Check out the repository at:
   http://www.zaplet.org/adzapper/repository/

   
Bugs
----
    
   On Windows platforms, adzapper doesn't use a Microsoft-approved method
   to find the DNS servers; it just looks in the registry. This doesn't
   work for people using a dialup connection.
   
   If you find any other bugs or problems, let me know! Help is greatly
   appreciated-- if you have any ideas for adzapper development, or if
   you have code that extends or improves adzapper, contact me at the
   address below. I'll do my best to incorporate improvements. For
   information on future plans, and areas where help is needed, see the
   file 'TODO'.
   

License
-------
    
   Since adzapper contains code from Zope, it is released under the the
   Zope Public License (ZPL) 1.0. This is an OpenSource-style license.
   For more information, see the file 'COPYING'.
   
   Only the files in the medusa directory contain code from Zope; all the
   other files do not. Accodingly these files are released under the Gnu
   General Public License (GPL), version 2, as well as the ZPL. For these
   files, you can choose either license, as you see fit. A copy of the
   GPL is provided in the file 'COPYING-Zaplet'.
   

Credits
-------
    
   Thanks go to many people. adzapper was inspired by the Muffin
   filtering proxy written by Mark Boyns, and additional inspiration and
   the impetus to start coding was provided by Constantinos Kotsokalis
   and his CTC filtering proxy. Rob Toews and Isaac helped me work out
   some of the key ideas behind adzapper. Guido van Rossum pointed out
   some bugs related to Windows 95/98. Andrzej Rusin discovered a severe
   memory leak. Jules Allen provided the logo.
   
   Many other people contributed ideas or patches, please see the file
   'THANKS'. If you contributed and your name isn't listed, let me know!
   
   The http proxy engine is built on top of ZServer, a component of the
   fantastic Zope web application server from Digital Creations. ZServer
   is based on medusa by Sam Rushing. Thanks to Digital Creations and Sam
   Rushing for making the source code available under an OpenSource
   license!
   
   The Windows version of adzapper was made possible by Mark Hammond's 
   Python for Windows Extensions, and Gordon McMillan's Builder.py.
   Builder.py can make any Python program into a standalone
   executable. This program rocks! The self-extracting executable for
   Windows was made possible by Jordan Russell's truly wonderful
   InnoSetup, an OpenSource Installer for Windows programs.
   
   Many thanks also go to Guido van Rossum and the PythonLabs team for
   the Python language!
   
   Python:      http://www.python.org/
   medusa:      http://www.nightmare.com/medusa/
   Builder.py:  http://www.mcmillan-inc.com/install1.html
   InnoSetup:   http://www.jordanr.dhs.org/isinfo.htm
   Zope:        http://www.zope.org/
   Muffin:      http://muffin.doit.org/
   CTC:         http://www.softlab.ece.ntua.gr/~ckotso/CTC/
   

   Check out the Open Directory Project's Ad Filtering software page for
   more ad filtering software!

   http://dmoz.org/Computers/Software/Internet/Servers/Proxy/Filtering/Ad_Filters/


Homepage
--------
    
   The adzapper homepage is currently at
   http://www.zaplet.org/adzapper/
   
   Coming soon: automatic zaplet updates; one-click posting of new
   zaplets; and a Python-style license!
   
   Stay tuned for more updates and improvements!
   
   cheers
   adam
   
   Adam Feuer
   adamf at pobox.com (replace the 'at' with '@' to contact me via email)
   http://www.pobox.com/~adamf/

   11 August 2000