Zeus Application Development

Introduction

ZEUS stands for "Zugg's Extensible User-interface Scripting."  Is is an architecture for developing applications that can be customized and scripted by the end-user.

Zeus consists of the following components:

  1. The ZEUS.EXE core program.  This executable contains all of the core objects that can be used by your application.  Examples of core objects include: text input boxes, buttons, menus, checkboxes, etc.  These components are not the bare-bones components that ship with Windows.  Instead, these are advanced high-level user-interface objects with many unique features.  In addition, each visual component is compatible with the overall Theme Engine used in Zeus that allows the user to apply an existing Windows XP Theme file to change the look of the application.  New versions of the Zeus Core engine are released regularly with new visual components and new features.
  2. The Application file (ZML file).  ZML files are standard XML format text files that contain the user interface layout and scripting for the application.  The ZML extension is used instead of the normal XML extension to allow windows to load the Zeus core engine when a ZML file is double-clicked within Windows.  ZML files can be loaded into any XML compliant editor.  The details of the ZML file will be discussed later in this document.  This is the text file that can be edited by the end-user to completely customize the application.
  3. Optional DLL Object files.  These are Windows Dynamic Link Libraries (DLL) which contain compiled objects.  These objects can be used in your Zeus application just like core objects contained in the Zeus Core engine described above.  The difference with DLL files is that they can be licensed separately from the main core engine.  This allows application developers to compile customized objects and components needed for an application into a DLL file which must be licensed by the end-user in order for the application to recognize the components in the DLL.  This combination of scripting by the end user along with compiled objects provides the best benefits to all.  The end-user can still customize the application and it's user interface, but the intellectual property of the developer is protected by the compiled object library.  Many object libraries are free, but some might be licensed and require an additional fee to use, depending upon the developer. 

Zeus vs. Mozilla

Zeus is similar in many ways to the Open Source Mozilla project.  The Zeus core engine acts like the Mozilla core engine, and the ZML files are similar in concept to the XUL files used in Mozilla.  The differences are that Mozilla is cross platform, which means that it does not use any technology native to any specific operating system.  Mozilla defines it's own cross-platform standards for things such as object communication, and uses JavaScript for cross-platform scripting.  Zeus, on the other hand, is optimized for the PC-Windows platform.  It makes extensive use of existing Windows standards, such as COM for object communication, and the Microsoft Scripting Engine for scripting.  Because Zeus is optimized for Windows, it has better performance and lower memory usage than Mozilla, and has higher compatibility with Windows components such as COM objects and ActiveX controls.  The disadvantage of Zeus is that is only runs on Windows.  If you use an operating system other than Windows, you should consider Mozilla.  Also, Mozilla is Open Source and Free, while Zeus is a commercial product of Zugg Software and is not free.  Zugg Software is a very small company that can react quickly to the market, produce updates and new features quickly, and provides high-quality personalized customer support.  The Open Source structure, while free, doesn't necessarily provide the support and structure that many end-users are looking for.

Documentation for Developers

The documentation on this site is split into several sections.  Documentation is currently under development and more links will be added over time.  Select the document that you are interested in: