# Agora (web browser)

Agora was a World Wide Web email browser that served as a proof of concept to help people use the full internet. Agora was an email-based web browser designed for non-graphic terminals and to help people without full access to the internet such as in developing countries or without a permanent internet connection. Similar to W3Gate, Agora was a server application designed to fetch HTML documents through e-mail rather than http.

## Functionality

   Agora, for those who cannot be in the Arena
Agora was not a client application. To access the Internet you had to install the Agora browser on a server and send Agora an email with the requested URL. The Agora application would send an email back with the requested content of the link. The email which was sent by the server, contained the HTML source code so that a normal web browser was able to display the page as it should be or in a lynx-style. Different options made browsing easier. The servers could be configured differently so that some servers sent emails back containing only JavaScript, because the content was deeper on the page. Agora was praised for handling frames correctly, although other similar applications were able to handle this by serving the source code and rerequest the used frame.

## Features

Although Agora was based on email communication it was able to search by different search engines: Archie, MetaCrawler, Lycos, Yahoo!, WAIS Search in Oxford Univ, Hyper RFC, WebCrawler, Veronica Search, AltaVista and Google.
Agora limits the number of requests processed in each message to 10 to prevent the service from being attacked by messages containing excessive commands that could cause a DDOS attack.

### Supported protocols

The Agora server is based on the Line Mode Browser and on the libwww and thus it supported different kinds of internet protocols besides the classical http and gopher browsing, namely NNTP, Archie, Finger, WAIS.
Although Agora was able to handle many protocols, the interactive telnet protocol was an exception.

## Version history

From Agora 0.7d it was possible to search some searchable sites by adding the search terms separated by spaces after the URL, but this would not work with forms. Since Agora version 0.8e it was possible to split the requested URLs into two or more lines. Data compression with uuencoded by gzip or zip was also integrated. Agora version 0.8f determined frames and linked pictures goto and the answer mail get help in these cases.

## Limitations

One limitation of Agora was that it had an integrated limit for the output mail of about 10,000 lines (originally 5,000) primarily to protect users and the network from excessive bandwidth/resource usage. With this limitation, uuencoded files would not exceed 1 megabyte because some operating systems and email clients had problems with files larger than 1MB. Uuencoded files used too much bandwidth and so data compression was integrated.
Since most websites contained links to inline images or binary files such as archives/executables Agora had to uuencode these files prior to sending them.
Usenet support was read only because the server was anonymous.

## Further development

In version 0.9 users were able to fill in forms. This version was never developed. The World Wide Web Consortium (W3C) servers were shut down because of the heavy load. Secret created the software to set up as a local strategy, but that did not work at that time. The consequences were that the W3C servers got too many requests and they had to shut down their Agora implementation.

## System requirements

To run Agora on a server, the server had to have Perl installed. The libwww binaries www_*.*.Z had to be in the same directory.

## Criticism

Agora ignored completely the different kinds of applets which were popular at that time: Tcl, Tk, Java and Python. Agora could not handle HTML tables properly. The Usenet support was incomplete and created problems in translating the answer in formatted text; also, some newsgroups caused a crash. It could not handle Chinese, Japanese, Korean web pages.