1. Caravan is a platform for building applications for OS/2, Windows and Linux. The purpose of Caravan is to make it easy to build reliable, high performance and mission critical applications using an object based architecture. Caravan provides the objects which are needed for data access, communications and user interface. Caravan language gives the ability to weave these objects seemlessly into your application. The objects take care of the interfacing to the operating system and the networked world in the most efficient and reliable manner possible. It is possible to build almost any type of application by using a combination of the available objects. It interesting that there are just a few object types that are neccessary to do this. Caravan itself is written in c++, making it possible to encapsulate the major technologies which are needed for building advanced applications. These are multithreading, communications protocols, file systems, data storage/access. Because of its very nature and unique purpose, it necessarily had to be built from scratch using a totally new approach. Though developed for OS/2, it has been now been ported to other multi-threaded operating systems. There is a common source for all platforms, so all versions are released simultaneously and there are no platform specific features or anomalies. Porting to other unix based systems is a simple task. 2. Integrated Database and search engine. All applications need a way to store data persistently and reliably. Caravan has an in-built data base engine just for this purpose, which can hold any type of information, including entire files. Extreme care has been taken to ensure the integrity of data, while providing fast and easy access. A search engine is integrated to this data base for searching efficiently in huge amounts of text - common requirement not properly met by existing database systems. 3. Integrated TCPIP services -- http,ftp,smtp TCP/IP is the backbone of commuincation systems. Caravan provides objects for integrating ftp, smtp and http into applications. Caravan can receive and send data/message/mail using any of these protocols. 4. File and Folder access. Caravan interfaces to the underlying filesystem using folder and file objects. This makes it possible to access the native file system in a platform independent manner. 5. Eventhandling, queues and scheduling of tasks. Messaging and communication require mechanisms for queuing and eventhandling. Messages can be queued fifo based, priority based, time based or a combination of these, and eventhandlers can be written to handle these queues in cocurrenlty running threads with low cpu usage and instantaneous response to critical events. Tasks can also be scheduled in the most flexible manner using schedulers. 6. Extensible through external utilities. Caravan can take help of existing utilities for processing information and performing complex tasks. So application builder can integrate existing expertise to caravan's in-built capabilities. 7. XML support. Caravan uses XML to describe its database tables and has a built-in parser to handle xml documents. XML documents are respresented as objects which can be accessed from caravan language. 8. Builtin Access Control and User management. Caravan provides an object based mechanism for managing users and priveleges. The user management features make it independent of the operating system and provides a flexible method to control user access. 9.Facility to run from encrypted application source. The application code written in caravan language can be encrypted, protecting the system and code from unathorised modifications and usage. Only caravan decipher this code. 10. Caravan has been a given GUI interface for easy setup and installation. Caravan is extremeley small for its features and capabilities, the entire program will fit in a floppy disk with room to spare. It is being made available on the web so that any one can, by just learning Caravan, can write very powerfull and high performance applications, in a short period.