Ongoing Python-Based Projects

Here is an informal collection of links to ongoing Python-related projects going on around the net. By spreading the word of ongoing projects, we hope to reduce duplicated effort and promote cross-pollination of those efforts and the ideas on which they're based. See also the PSA Special Interest Groups, formally organized channels for ongoing Python development projects in specific topic areas.

If you have a project that you would like to see listed here, please drop us a line at webmaster@python.org.

(You probably also want to check the Contributed resources doc, for clues to in-process efforts that have not specifically been mentioned to us as ongoing projects.)

Mailman (last update 11-Feb-2000)
Mailman is a mailing list manager, written primarily in Python, providing all the usual list management features. Most interactions with Mailman can be performed over the Web by both users and list administrators.

ILU (ongoing)
ILU (it's spelled Inter-Language Unification but it's pronounced eye-loo) is a (very) CORBA-ish multi-language object interface system. It currently has bindings for Common Lisp, C++, ANSI C, Modula-3 and Python.

High performance threading (Greg Stein, last update 13-Jan-1997)
Greg is working on a set of patches to make Python fully reentrant in a threaded environment. In addition, this removes the "global interpreter lock" that is present in the standard distribution. The end result should be a version of Python that is capable of much higher performance for threaded applications.

The current set of patches are available for application against Python 1.4 sources. Warning: they are not for the weak at heart! :-)

A README is also available for more information.

Wily/Python interface (Gary Capell, last update: 4/4/96)
Wily is a text editor/programming environment which emulates Acme from Plan 9. There is no extension language built into the editor, but there is a messaging interface to allow other programs to create and modify text windows and respond to events in those windows. It is hoped that Wily and Python will be at least as useful a combination as EMACS and Lisp.

Python Imaging Library (Fredrik Lundh, last Update: 4/11/96)
The Python Imaging Library adds an image object to your Python interpreter. You can load image objects from a variety of file formats, and apply a rich set of image operations to them. See also the Image-SIG.

Ray Tracer Scene Definition Language (Paul Tuckfield, last update: 4/10/96)
Paul is hooking a ray tracer he's writing in C++ up with Python.

Molecular Modelling Toolkit (Konrad Hinsen, last update: 2/13/97)
The Molecular Modelling Toolkit (MMTK) is an ongoing project aiming at the development of a code library for all aspects of molecular modelling. It consists mainly of Python modules, with a few C extension modules for time-critical calculations (e.g. force field evaluation).

Windows and DOS Ports (Mark Hammond, Jim Ahlstrom, Last update: 4/11/96)
For more information, see the PythonWin-SIG and the respective pages maintained by Mark and Jim:
  • Mark Hammond's PythonWin (Windows only)
  • Jim Ahlstrom's WPY (Windows and DOS).

Macintosh Port (Jack Jansen, Guido van Rossum, Last update: 4/11/96)
Jack is continuously improving the Python Macintosh port, especially the PPC version. His latest work can generally be found at ftp.cwi.nl in /pub/jack/python/mac, although part of it is also mirrored on ftp.python.org. See also the pythonmac-SIG (moderated by Jack). Guido occasionally helps out with the 68K port.

X11 Motif/Xt Extension (Sjoerd Mullender, last update: 4/11/96)
Sjoerd is maintaining an extension module that links Python to the Motif toolkit, or (with a little work) to any other X11 toolkit that uses the Xt Intrinsics library. The latest release can be found on ftp.cwi.nl.

Basic Universe Simulator (Joseph Strout, last update: 4/26/96)
Joseph has provoked some attention to using python for gaming, to stimulate the interest of kids and other playful folk. He quickly developed a gaming engine to play with, BUS.

Extension Classes - a mechanism for making Python extension types more class-like (Jim Fulton, Digital Creations, last update: 9/99)
Using this mechanism, classes can be developed in an extension language, such as C or C++, and the resulting objects can be treated like other python classes:

  • They can be subclassed in python,
  • They provide access to method documentation strings, and
  • They can be used to directly create new instances.

Extension classes provide support for extended method binding protocols to support additional method types and additional method call sematics.

MESS Meta-Extension System Set - reconciling Python objects and object types (Donald Beaudry, David Ascher, last update: 6/7/96)
By establishing Python builtin types as abstract classes, MESS enables you to inherit from and extend builtin types within native Python. Ie, you can extend the primitive Python types, like integers, strings, lists, etc., as well as any extension types you've created in C, C++, etc.

This is a work-in-progress, with much of the coding effort done, but much documentation to be done...

BSCW Shared Workspace System (Richard Bentley, last update Nov-1996)
The Basic Support for Cooperative Work group at GMD in Germany has implemented a shared workspace server for the web as a collection of Python CGI scripts.

Python port to Novell NetWare (Jim Duke, last update 18-Dec-1996)
Jim is working on a port of Python to Novell NetWare, which he intends to make available to the net. He's interested in input, and is happy to provide info on request...

Chautauqua (Carlos Maltzahn, last update 13-Oct-1996)
Chautauqua is a client server workflow system implemented almost entirely in Python. It uses Paos (Python active object server) as a server, a web server extended by Python CGI programs and various (interactive and non-interactive) Python clients.

PyMaker (Ulrich Herold, last update 14-May-1997)
Ulrich is developing a Python / FrameMaker Interface, which embeds almost all FrameMaker-Api-Calls in a Python interpreter. This Python interpreter is a FrameMaker-Api-client called "PyMaker". The "brain work" is already done and some FrameMaker-Api-clients are on their way to be developed and released in june 1997. Some information can be seen at http://home.t-online.de/home/PyMaker

Alice
Alice is an interactive 3D graphics package originally developed at the University of Virginia, and under continuing development at Carnegie Mellon University. The goal of Alice is to make 3D graphics easy to learn and use. Python provides interactivity and clean syntax so even novice computer users can be successful and have fun with Alice. Alice for Windows 95 is available FREE from The Alice Home Page. (It was originally released at U.VA. in the Fall of 1996.)

PythonWorks
PythonWorks is the first commercially available IDE and RAD tool for Python containing a combined editor/browser with syntax highlightning as well as a layout editor. Future versions will contain version control support, uiToolkit etc. PythonWorks will be available for Windows, Linux (Red Hat and Suse) and Solaris.   Interested developers may download a free, time limited evaluation copy at http://www.pythonware.com/products/works/testdrive.htm.

  More information is available at http://www.pythonware.com.

Contact information: info@pythonware.com

COAS
Caldera, a prominent Linux distribution and development company, is developing the Caldera Open Administration System (COAS), to provide a comprehensive and coherent framework for implementation of Linux system administration mechanisms. Among other things, COAS is designed to provide a plug-in framework for administrative-task modules which are written in Python or C++ (or both).

Mnemonic Mediator
MMediator, a substantial GNU-styled freeware project, "will be a powerful, portable groupware framework". It is based out of an academic environment, and claims to integrate Python "for Core Development".

Adonthell
Together with the RPG engine, a small demo game is available: Waste's Edge. Due to the early state of the engine it resembles an Adventure game rather than a RPG, but it is fully playable and should keep you busy for an afternoon at least. Have a look at some screenshots first, then download.

The main purpose of this release is to attract new programmers, artists and writers in order to shorten the time until the next version. So if you have experience in C++ (and optionally Python), or if you are good at computer graphics or writing we would like to hear from you. Please have a look at our development site for further details.

VPython
VPython consists of Python, plus the Visual module created by David Scherer, plus an enhanced version of IDLE for rapid edit/run cycles. Even those who have never written a program before are able after just an hour or two of instruction to produce navigable real-time 3D animations under program control. Free download from http://vpython.org.

radiusContext
radiusContext is a system for generating reports on dial-in user activity. It takes RADIUS accounting logs and generates per-user and overall usage statistics including time on-line, number of sessions, data transferred, reason for disconnect, and more... It is designed to be able to handle multi-gigabyte or larger log-files on modest computers.

imgSeek
imgSeek is a photo collection manager and viewer with content-based search and many other features. The query is expressed either as a rough sketch painted by the user or as another image you supply (or an image in your collection). The searching algorithm makes use of multiresolution wavelet decomposition of the query and database images.