The Cineast Home Page
What is Cineast?
Simply speaking, Cineast is a web browser. But actually, it is far more than that and offers features other browsers don't have:
- Cineast is freely available not only in binary but also in source form.
- Cineast is written in OTcl (a straightforward object oriented extension to Tcl) which makes it very easy to modify and extend compared to browsers written in other languages such as C or Java.
- To increase the extendibility even more, Cineast is based on the Kino widget class, which provides a callback interface for HTML parsing and arbitrary widgets as insets.
- Cineast supports most of HTML 3.2 including tables, forms and images (JPEG, GIF, PNG, XPM and XBM)
- Incremental parsing and rendering of HTML is provided. In general Cineast displays new text as soon as it is received from the network. Cineast supports even incremental display of tables, although in this case the benefits are questionable.
- Secure connections are possible through SSL, SSL functionality including strong cryptography is provided through Wafe's interface to SSLeay.
This is a screenshot of Cineast:
How does Cineast work?
As mentioned above, Cineast itself is implemented in OTcl. This means that most of the high-level logic is easy modifiable. To implement the user interface, the Wafe toolkit is used. Wafe provides a very comfortable method to build X Toolkit-based applications using OSF/Motif, Athena or other compliant widget sets. It incorporates also special purpose widgets for multimedia, plotting, layouting and other applications.
One of these special widgets is the Kino widget. The Kino widget is a very flexible HTML parser and layouter. Its capabilities are mostly achieved through extensions which are added using the parser's callback interface. The Kino widget in conjunction with Wafe makes it very easy to embed any of the special purpose widgets in a HTML page and have a sort of lightweight OpenDoc, ActiveX or similar compound document.
The next figure shows an structural overview of Cineast:
Wafe is used as a connecting layer between the low-level parts such as the Kino widget and the OSF/Motif widgets, the implementation of the network functionality and the high-level logic (Cineast itself). In version 1.2 of Cineast libwww was replaced by an OO implementation of the networking code implemented in OTcl.
More details about Cineast can be obtained from:
- Cineast browser presentation at WWW6, Sixth International World Wide Web Conference, Poster Session, Santa Clara, California, April 7-11 1997.
- Neumann G., Nusser S.: A Framework and Prototyping Environment for a W3 Security Architecture, Proceedings of Communications and Multimedia Security, Joint Working Conference IFIP TC-6 and TC-11, Athens, Sept 1997 (long version in postscript).
What doesn't Cineast do?
Primarily, Cineast is intended as a fast, compact and usable web browser which can be easily modified and extended, thus it is an ideal prototyping platform. On the other hand, there are (still) some features missing:
- Java support. Since Cineast is based on OTcl, Java support is not a foremost issue, but it will be added eventually
- Frames are not yet handled (there are many interesting alternatives and possibilities)
- Netscape's Plug-Ins. These don't make any sense because Cineast is far better in handling embedded objects (see below)
- Printing will be added in a later version
- Editing of HTML text is (not yet) implemented. It is challenging and can be done, but there are other more important features unfinished.
Which platforms does Cineast run on?
Cineast is Unix/X Windows/Motif based and has been developed primarily on Linux. In general, Cineast runs on each platform on which mofe (OSF/Motif version of Wafe) can be compiled. We have here binaries on Linux and AIX, and Solaris 2.6 (SunOs 5.6). There are success reports form compilations under Irix, HP/UX, Ultrix and OSF/1.
Note that on Linux, an installation of OSF/Motif is not required for Cineast since it is available with statically linked Motif libraries!
Where can I get Cineast?
Cineast requires the Motif version of Wafe (called mofe). Sources and binaries can be obtained from Essen (Germany) as well from the mirror site in Vienna (Austria). The current version of cineast is 1.4.
The following packages for Linux are in RedHat's RPM format. The Solaris binary is a gnu-zipped tar file.
- New in version 1.4: