DG3 is a loosely coupled framework consisting different components working together. This is done to give you as a user a fast, reliable tool to create web applications without reinventing the wheel. DG3 takes the best from DataEase and fuse it together with a lot of existing opensource components. The product is built to be open in all ends. This means that you can do anything in this product that you can do by manually programming using a standard programming language and another web framework. The big difference between DG3 and other frameworks are speed of development, deployment and the ease of change. That means that there is no long development cycles. No need for big documents and planning. The product is made for on the go development. That is you can do several updates on a live system every day, sometimes several changes every hour. Here are the highlights of what DG3 consists of. All the opensource components are listed together with the licenses in an appendix of DG3 Reference Guide.

PRISM

This is the original DataEase relational database engine. It included tables, formula language and a data query language (DQL). This is a DG3 version that is compatible with DfW8 file format. It is close to the same PRISM engine as the one used in DfW8, but stripped for the parts handling communication with GUI as PRISM in DG3 is a service serving data from the web server.

DG3

This is the client software used to develop web applications. It consists of several components giving you what you need to develop a full blown web application.

The short list:

  • Preview browser
  • Page designer
  • DQL editor
  • Application wide settings
  • Security settings
  • Page caching module
  • Modules
  • Snippets
  • Actions
  • Context editor
  • Task editor
  • Schedule editor
  • Search engine editor
  • Web server console
  • Site layout editor
  • Template editor
  • Robots editor
  • Style definitions
  • Database manipulation
  • Table designer
  • Transfer editor
  • Reporter
  • Deployment module
  • Deployment server settings
  • Debugger

DG3DS

This is the Deployment Server. It's job is to sit on the web server and make sure that you can update parts of your DG3 Web application or a DfW8 in real time. It helps doing a diff of files and data to see what is changed in your development since the last update together with the deployment module in DG3 developer. The two  together creates a deployment package that can be installed on the remote web server. The DG3DS can also run the deployment packages. The result is that you can update you web server automatically from DG3.

Internal web server

DG3 has a built in web server that is used for serving the pages when doing development. This web server in not meant for live web applications as it can only handle one user at the time. The internal web server is the one included in Django in DG3.

External web server

DG3 bundles what you need for a live web server as well. This will be used after a web application is deployed using DG3DS and will serve the pages for many simultaneous users. You can have several web applications served by the same live web server. The only restriction is that each server must have an unique name and that the web server has sufficient memory to serve more than one application.