Hey Rafael,

I started something like this a while ago:


The original goal was to support Durus and ZODB but the code in the
mercurial respository only works with Durus. It is just a prototype, but
feel free to look at the code and use it if you want... (it's GPL anyway).

There is a simple pyglet interface, since I didn't wanted it to depend any
C-based libraries, such as the main GUI toolkits available for python.

Also take a look at a little known python module called editObj. It will
give you great insights on how to interact with live objects.


good  luck!


On Thu, Mar 27, 2008 at 4:14 PM, Rafael Oliveira <[EMAIL PROTECTED]>

> Hello,
> I've submitted a proposal for GSoC with the title "Graphical browser
> for ZODB (zodbbrowser enhancements)" after discussing with some folks
> on the [EMAIL PROTECTED] mailing list. I'm posting here the proposal for
> discussion, as suggested by Martjin Faasen. Here it is:
> Abstract
> --------
> The goal of this project is to provide an easy way for an user of ZODB to
> look
> inside a ZODB instance and browse through the objects. The goal will be
> accomplished by extending zodbbrowser, a desktop program that has the same
> goals but is on an early stage of development.
> Specification
> -------------
> Currently zodbbrowser [1]_ presents only a tree view of the objects on a
> instance and a text panel where the attribute values are displayed. The
> following enhancements and new features are proposed:
> 1. Make the UI more user-friendly.
>    1.1 Make it look more like a file system browser (e.g Windows
> Explorer),
>        where the composite objects (list, dict, tuple, etc) behave like
>        directories and the simple objects (str, int, etc) behave like
> files.
>    1.2 Many minor UI enhancements can be done, e.g use an image icon for
> each
>        object type.
> 2. Display object sizes.
> 3. Transaction history viewer, with ability to undo a transaction. This
> will be
>   much like Zope's undo functionality.
> 4. Search. The user will be able to search for objects IDs and/or values.
> 5. Open console. The user will be able to right-click on an object and
> open a
>   Python console in order to execute arbitrary commands to manipulate the
>   objects on the DB.
> Some project decisions
> ----------------------
> 1. zodbbrowser will remain as independent from Zope as possible. The
> main reason
>   is ZODB is a great DBMS and can be used standalone on any kind of
>   application.
> 2. A Web UI is not on the scope of the project. I think it's easier to
> implement
>   the proposed features on a desktop app. Also, the same reason for
> project
>   decision holds here too.
> 3. As is known a Web UI would be a plus, effort should be done in order to
> keep
>   the code as UI independent as possible.
> Benefits
> --------
> A tool like zodbbrowser is something that users coming from the RDBMS
> world
> really miss. All the popular RDBMS have a tool to browse through the data.
> Also, with the proposed enhancements and new features it will be a great
> debugging tool. Perhaps it would help ZODB become more popular even on
> non-Zope related projects.
> .. References
>   ----------
> .. [1]
> svn://svn.zope.org/repos/main/z3c.zodbbrowser/sandbox/src/z3c/zodbbrowser
> PS.: I stripped out the sections Roadmap, About Me and Thanks
> sections. The full proposal text can be found at
> http://rafaelb.objectis.net/google-summer-of-code-2008/graphical-browser-for-zodb-zodbbrowser-enhancements/
> --
> Rafael Bruno Cavalhero de Oliveira <[EMAIL PROTECTED]>
> Analista de Sistemas - Paradigma <http://www.paradigma.com.br>
> Mestrando em Ciência da Informação - UFMG
> http://rafaelb.objectis.net
> _______________________________________________
> For more information about ZODB, see the ZODB Wiki:
> http://www.zope.org/Wikis/ZODB/
> ZODB-Dev mailing list  -  ZODB-Dev@zope.org
> http://mail.zope.org/mailman/listinfo/zodb-dev
For more information about ZODB, see the ZODB Wiki:

ZODB-Dev mailing list  -  ZODB-Dev@zope.org

Reply via email to