ANN: Dabo 3-tier desktop framework for data-aware apps

Paul McNett p at ulmcnett.com
Wed May 12 09:53:00 EDT 2004


Hello Pythonistas,

Ed Leafe and I have been collaborating on a new 3-tier framework 
for creating cross-platform data-aware applications. While it 
is still quite alpha, we decided to go ahead and announce it to 
get a feel for what level of interest it would gather. 

The product's name is Dabo, and it will let you create 
data-aware desktop apps for distribution to Mac, Linux, Unix, 
and Windows computers. It is written in Python and wraps 
the wxPython widgets, which is why we are announcing it here. 

Attached is the text of the complete announcement, but it is 
kind of long. Please visit us at:

http://dabodev.com

and if interested in Dabo, consider joining one or both of our 
mailing lists:

http://leafe.com/mailman/listinfo/dabo-users
http://leafe.com/mailman/listinfo/dabo-dev

Only join the dev list if you think you want to participate in 
dabo's development or monitor the daily source code commit 
traffic and ensuing discussion.

Thanks!

---
May 11, 2004
Announcing Dabo 0.1

Dabo is a Python module that provides a true 3-tier desktop 
application framework. It separates the three main parts of a 
desktop app: database access, user interface and business 
logic. You would typically use Dabo to develop graphical, 
data-aware desktop applications.

Both the database layer and the UI layer can be used 
independently from the rest of Dabo. In fact, we have 
endeavored to make the Dabo classes much simpler to work with 
than the underlying UI systems they are based on. But the real 
strength comes with using Dabo as your entire framework, 
complete with the dApp application object.

Dabo, since it is written in Python, runs on Unix, Linux, Mac OS 
X, and Windows (all flavors).

Dabo is very early in its development, so the choices for 
database and UI are limited at the moment. Currently, the only 
supported database backend is MySQL, and the only supported 
user interface library is wxPython. However, the system was 
designed from the beginning to be able to support any database 
or UI; all it will take is some time and effort. In the near 
future, all popular databases will be supported, including 
PostgreSQL, Oracle, Berkeley DB and MS-SQL. There is also no 
reason that other that other UI libraries, such as PyQt, 
TkInter, Curses, PyObjC, and even HTTP can work with Dabo.

One of the key factors in the evolution of Dabo will be the 
contribution of the community. If you have a database or UI 
library you'd like supported, we'd love to add your 
contributions to the product! The key to any Open Source 
project is the involvement and development of a community, and 
Dabo is no different. 

Dabo is a dual-licensed open source project. You may download it 
and use it for free under the GPL, which would allow you to 
distribute it for free with your GPL projects, or you may 
purchase licenses for distribution with commercial or 
proprietary applications for a reasonable fee. We are also 
considering offering a FOSS (Free and Open Source Software) 
Exception, which would keep your non-GPL'd projects from 
falling under the GPL.

There is no warranty provided with Dabo, it is provided 'as-is'. 
Dabo is currently in a pre-alpha state of development. There is 
currently no official documentation, other than the source code 
and the introductory bits on our website:

http://dabodev.com


The primary means of support is provided through the dabo-users 
mailing list, to which you may subscribe by visiting:

http://leafe.com/mailman/listinfo/dabo-users


Dabo may be downloaded from the following link:

http://leafe.com/dls/dabo


We invite you to participate in the development of Dabo. The 
source code is available from our Subversion repository, so 
you'll need to install the Subversion client from 
http://subversion.tigris.org. If you are familiar with CVS, 
you'll love Subversion. The repository can then be downloaded 
by issuing the following command:

svn checkout svn://paulmcnett.com/dabo/trunk dabo


There is a mailing list for developers, to which you may 
subscribe by visiting:

http://leafe.com/mailman/listinfo/dabo-dev

All development conversations are had there, and commit 
notifications are sent there. You may submit patches to that 
address as a text attachment in svn diff format.


In addition to the main dabo project, there are three other 
Dabo-related projects in various states of development:

svn checkout svn://paulmcnett.com/dabodemo/trunk dabodemo
svn co svn://paulmcnett.com/dabodesigner/trunk dabodesigner
svn checkout svn://paulmcnett.com/dabodoc/trunk dabodoc

The 'dabodemo' project seeks to develop one or more example 
applications that can be used by developers learning Dabo as a 
guideline and/or starting point for understanding how to go 
about creating an application using Dabo. A frequent problem 
with any new development tool is right after you get it 
installed and say "OK, now what?". The dabodemo project's goal 
is to provide some examples to get you going.

The 'dabodesigner' project is an attempt to create a visual form 
design tool, analogous to the design surfaces in Visual Studio, 
or the Form/Class designer in Visual FoxPro. While it is *very* 
early in development and still needs a lot of work, it has a 
lot of functionality in it already. There is also a 'wizard' 
for creating basic database table maintenance applications. 
Depending on user interest, this project may grow to include 
other similar tools to make the visual side of app development 
easier.

The 'dabodoc' project is designed to be a repository for 
documentation. Like most projects that are the work of a small 
group, the developers have been too busy developing to properly 
document things. This is our acknowledgement of that fact, and 
a place for those of you who want to contribute, to write 
and/or Edit the Dabo documentation.


Please visit our website at:

http://dabodev.com


and contribute to the Dabo Wiki at:

http://dabodev.com/wiki


--
Ed Leafe
Paul McNett






More information about the Python-list mailing list