Python Source
A
Ajax
Aspect-Oriented
 
B
Bloggers
Build Systems
 
C
CMS
Charting & Reporting
Code Analyzers
Connection Pools
 
D
Databases
 
E
ERP & CRM
ESB
 
F
Forum Soft
 
G
General Purpose
 
H
HTML Parsers
 
I
IDEs
Installers
Issue Tracking
 
L
Logging Tools
 
N
Network Clients
Network Servers
 
P
PDF Libraries
Parser Generators
Persistence
Project Management
 
R
RSS & RDF Tools
 
S
Search Engines
Security
Source Control
 
T
Template Engines
Testing Tools
 
W
Web Frameworks
Web Mail
Web Servers
Web Services
Web Testing
Wiki Engines
Workflow Engines
 
X
XML Parsers
 

Open Source Software in Python

Open Source Ajax Frameworks

  • Pyjamas - Pyjamas is a web framework based on the translation of the application and libraries (including UI widgets and DOM classes) to Javascript and the packaging up of that Javascript code.

Open Source Aspect-Oriented Frameworks in Python

  • Aspects.py - aspects.py library provides means to intercept function calls. Functions and methods (also in Python standard library and third party code) can be wrapped so that when they are called, the wrap is invoked first. Depending on the wrap, the execution of the original function can be omitted, or the function can be called arbitrarily many times. Wraps are able to modify the arguments and the return value of the original function. In the terminology of aspect-oriented programming, the library allows applying advices (wraps) to call join points of methods and functions in around fashion.

Open Source Bloggers in Python

  • PyBlosxom - PyBlosxom is a lightweight file-based weblog system. It originally started out as a Python clone of Blosxom but has since evolved into a beast of its own. PyBlosxom focuses on three things: simplicity, extensibility, and community.

     * simplicity - PyBlosxom uses the file system for all its data storage. Because of this you can use whatever editor you want to use to create, update, and manipulate entries.
     * extensibility - PyBlosxom has a plugin framework allowing you to build plugins in Python to augment and change PyBlosxom's default behavior.
     * community - There are hundreds of PyBlosxom users out there all of whom have different needs. PyBlosxom is used on a variety of operating systems in a variety of environments. The pyblosxom users list shares their experiences, plugins, and expertise. PyBlosxom runs as a CGI script, under Paste, and as a WSGI

Open Source Build Systems in Python

  • Aap - The Aap program executes recipes. It is a kind of super-make program. In a recipe you describe how to perform a certain task. Like a Makefile it contains dependencies and build commands. Additionally, many powerful features are included, so that you can use a recipe to:

     * Build a program by just specifying the program name and the source files
     * Maintain a web site (the A-A-P site is generated and uploaded with a recipe)
     * Download the latest version of files
     * Distribute files to several servers at once
     * Obtain a module from CVS
     * Commit changes to CVS; add and remove files automatically
     * Generate and filter files
     * Build several variants and on multiple platforms with little effort

Open Source Content Management Systems (CMS) in Python

  • Plone - Plone is a ready-to-run content management system that is built on the powerful and free Zope application server. Plone is easy to set up, extremely flexible, and provides you with a system for managing web content that is ideal for project groups, communities, web sites, extranets and intranets.

Open Source Charting & Reporting Tools in Python

  • PyChart - PyChart is a Python library for creating high quality Encapsulated Postscript, PDF, PNG, or SVG charts. It currently supports line plots, bar plots, range-fill plots, and pie charts.

Open Source Code Analyzers in Python

  • PyChecker - PyChecker is a tool for finding bugs in python source code. It finds problems that are typically caught by a compiler for less dynamic languages, like C and C++. It is similar to lint. Because of the dynamic nature of python, some warnings may be incorrect; however, spurious warnings should be fairly infrequent.

Open Source Database Connection Pools

  • SQL Relay - Database connection pool with support for lots of languages and databases.

Open Source Database Engines in Python

  • PyTables - PyTables is a package for managing hierarchical datasets and designed to efficiently and easily cope with extremely large amounts of data.

Open Source ERP & CRM Software

  • Tiny ERP - Tiny ERP is an Open Source ERP & CRM. Tiny ERP has been developed for flexible and specific needs. The principal modules are:

     * Customer and supplier management
     * CRM: customers, sales opportunities segmentation, ...
     * Marketing: Campaigns, Reporting, ...
     * Accounting: Double-entry, Analytic, Financial, ...
     * Sales: Sales Management, Orders, Commercial Organisation, ...
     * Stocks: Stock Management, Double-Entry, Per location, ...
     * Purchase: Invoicing Control, Merchandise Control, ...
     * Logistic: Work flows, Intern Request, Programmable Alarm, ...
     * Human Resources: Time Sheets, Notes, ...
     * Network: simultanious multiple users of a central database, ...

Open Source Enterprise Service Bus in Python

  • SnapLogic - SnapLogicis an Open Source Data Integration framework that uses the universal standards of the Web and applies them to the problem of data integration. Unlike commercial integration solutions that are designed for individual integration tasks, SnapLogic has the power and flexibility to address a wide range of data integration requirements without hand-coding. Whether it is data migration and synchronization, ETL for data analytics or data services for Rich Internet Applications, SnapLogic can meet all of your data integration needs.

Open Source Forum Software in Python

  • Sphene Community Tools - SCT (Sphene Community Tools) is a collection of Django applications that are designed to be easily pluggable into any Django project. It currently consists of a Wiki and an extensible Forum application. Features for the forum include rendering of BBCode or markdown (with a pluggable rendering architecture), hierarchical forum categories, granular permissions, new posts-notifications and many more. It is extensible through 'Category Types' and includes a LinkList and Blog application to demonstrate it's use.

Open Source General Purpose Libraries in Python

  • Python Hyperschema - Python Hyperschema is an open source public domain project that creates useful and really cool HTML hypermaps from SQL database schema, consisting of two small PL/SQL files and one Python (or C) source code file. The generated HTML pages have mousover data displays for all foreign keys, hyperlinked to the foreign key tables, as well as a hyperlinked list of all foreign keys pointing to each table and a master index of all tables.

Open Source HTML Parsers in Python

  • Beautiful Soup - Beautiful Soup is a Python HTML/XML parser designed for quick turnaround projects like screen-scraping. Features:

     * Beautiful Soup won't choke if you give it bad markup. It yields a parse tree that makes approximately as much sense as your original document. This is usually good enough to collect the data you need and run away.
     * Beautiful Soup provides a few simple methods and Pythonic idioms for navigating, searching, and modifying a parse tree: a toolkit for dissecting a document and extracting what you need. You don't have to create a custom parser for each application.
     * Beautiful Soup automatically converts incoming documents to Unicode and outgoing documents to UTF-8. .

Open Source IDEs in Python

  • Eric - Eric is a full featured Python and Ruby editor and IDE, written in python. It is based on the cross platform Qt gui toolkit, integrating the highly flexible Scintilla editor control. It is designed to be usable as everdays' quick and dirty editor as well as being usable as a professional project management tool integrating many advanced features Python offers the professional coder.

Open Source Installers Generators in Python

  • PyInstaller - PyInstaller is a program that converts (packages) Python programs into stand-alone executables, under Windows, Linux and Irix. Its main advantages over similar tools are that PyInstaller works with any version of Python since 1.5, it builds smaller executables thanks to transparent compression, it is multi-platform (so you can build one-file binaries also under Linux), and use the OS support to load the dynamic libraries, thus ensuring full compatibility.

Open Source Issue Tracking Software in Python

  • IssueTrackerProduct - IssueTrackerProduct is a help desk/issue/bug tracker web application under the ZPL license

Open Source Logging Tools in Python

  • Logging - Logging is a standard logging system. Based on PEP 282 and comments thereto in comp.lang.python, and influenced by Apache's log4j system. Should work under Python versions >= 1.5.2, except that source line information is not available unless 'sys._getframe()' is.

Open Source Network Clients in Python

  • Python-ldap - Python-ldap provides an object-oriented API to access LDAP directory servers from Python programs. Mainly it wraps the OpenLDAP 2.x libs for that purpose. Additionally the package contains modules for other LDAP-related stuff (e.g. processing LDIF, LDAPURLs, LDAPv3 schema, etc.).

Open Source Network Servers in Python

  • NetworkX - NetworkX (NX) is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks. Features:

     * Includes standard graph-theoretic and statistical physics functions
     * Easy exchange of network algorithms between applications, disciplines, and platforms
     * Includes many classic graphs and synthetic networks
     * Nodes and edges can be "anything" (e.g. time-series, text, images, XML records)
     * Exploits existing code from high-quality legacy software in C, C++, Fortran, etc.
     * Open source (encourages community input)
     * Unit-tested

Open Source PDF Libraries in Python

  • PyPDF - PyPDF is a Pure-Python library built as a PDF toolkit. It is capable of:

     * extracting document information (title, author, ...),
     * splitting documents page by page,
     * merging documents page by page,
     * cropping pages,
     * merging multiple pages into a single page,
     * encrypting and decrypting PDF files.

Open Source Parser Generators in Python

  • PyParsing - The PyParsing module is an alternative approach to creating and executing simple grammars, vs. the traditional lex/yacc approach, or the use of regular expressions. The PyParsing module provides a library of classes that client code uses to construct the grammar directly in Python code.

Open Source Persistence Frameworks in Python

  • SQLObject - SQLObject is a popular Object Relational Manager for providing an object interface to your database, with tables as classes, rows as instances, and columns as attributes. SQLObject includes a Python-object-based query language that makes SQL more abstract, and provides substantial database independence for applications.

Open Source Project Management Tools in Python

  • Task Coach - Task Coach is a simple open source todo manager to manage personal tasks and todo lists. Task Coach currently (0.65.0) has the following features:

     * Creating, editing, and deleting tasks and subtasks.
     * Tasks have a subject, description, priority, start date, due date, a completion date and an optional reminder.
     * Tasks can be viewed as a list or as a tree.
     * Tasks can be sorted by all task attributes, e.g. subject, budget, budget left, due date, etc.
     * Several filters to e.g. hide completed tasks or view only tasks that are due today.
     * Tasks can be created by dragging an e-mail message from Outlook or Thunderbird onto a task viewer.
     * Attachments can be added to task by dragging and dropping files, e-mail messages from Outlook or Thunderbird, or URL's onto a task.
     * Task status depends on its subtask and vice versa. E.g. if you mark the last uncompleted subtask as completed, the parent task is automatically marked as completed too.
     * Tasks and notes can be assigned to user-defined categories.
     * Settings are persistent and saved automatically. The last opened file is loaded automatically when starting Task Coach.
     * Tracking time spent on tasks. Tasks can have a budget. Time spent can be viewed by individual effort period, by day, by week, and by month.
     * The Task Coach file format (.tsk) is XML.
     * Tasks, notes, effort, and categories can be exported to HTML and CSV (Comma separated format). Effort can be exported to iCalendar/ICS format as well.
     * Tasks, effort, notes, and categories can be printed. When printing, Task Coach prints the information that is visible in the current view, including any filters and sort order.
     * Task Coach can be run from a removable medium.

Open Source RSS & RDF Tools in Python

  • Universal Feed Parser - Universal Feed Parser is a Python module for downloading and parsing syndicated feeds. It can handle RSS 0.90, Netscape RSS 0.91, Userland RSS 0.91, RSS 0.92, RSS 0.93, RSS 0.94, RSS 1.0, RSS 2.0, Atom 0.3, Atom 1.0, and CDF feeds. It also parses several popular extension modules, including Dublin Core and Apple's iTunes extensions.

Open Source Search Engines in Python

  • advas - advas is a python module which provides algorithms for advanced search. These methods are mainly used in information retrieval and linguistics. This package contains:

     * statistical algorithms: term frequency (tf), term frequency with stop list, inverse document frequency (idf), retrieval status value (rsv), language detection, k-nearest neighbour algorithm (kNN).
     * linguistic algorithms: stemming algorithms, synonym detection with the use of the OpenThesaurus (plain text version).
     * sound-like methods: soundex, metaphone, NYSIIS algorithm, caverphone algorithm (version 2.0).
     * ranking methods a simple descriptor-based ranking algorithm.
     * text search algorithms: Knuth-Morris-Pratt.

Open Source Security Tools in Python

  • fcrypt - Python fcrypt is a pure Python implementation of the Unix crypt(3) algorithm, and packaged it with Distutils and with doc strings for pydoc and doctest. It's based on Eric A. Young's optimized fcrypt code, which was written in C.

Source Control Tools in Python

  • Bazaar - Bazaar is a distributed version control system, that reduces barriers to participation in your project. Features:

     * Good performance: Bazaar status in a tree of 5,000 files takes just 0.5 seconds, so almost every open source project can get the advanced features of Bazaar without slowing down its developers.
     * Safe with your data: Bazaar has a huge test suite that ensures that new file formats can be tested automatically. The development process follows best practice with code review of all core and community code landings.
     * Friendly: Bazaar "Just Works" (which is why the Ubuntu team chose it for their project). Bazaar has a natural feel, you can publish your code on any web server or use a custom server for performance. Bazaar has perfect support for renaming files AND directories, which means you can unleash your community and merge efficiently even from contributors who are radically restructuring the tree.
     * Easy to integrate: Bazaar is designed as a Python API with a plugin system, so it is easy to embed in your tools and projects and easy to extend or integrate with existing infrastructure.

Open Source Template Engines in Python

  • Cheetah - Cheetah is an open source template engine and code generation tool, written in Python. It can be used standalone or combined with other tools and frameworks. Web development is its principle use, but Cheetah is very flexible and is also being used to generate C++ game code, Java, sql, form emails and even Python code.

Open Source Testing Tools in Python

  • pyUnitPerf - pyUnitPerf is a collection of pyUnit test decorators used to measure the performance and scalability of functionality contained within existing pyUnit tests.

Open Source Web Frameworks in Python

  • Zope - Zope is an open source web application server primarily written in the Python programming language. It features a transactional object database which can store not only content and custom data, but also dynamic HTML templates, scripts, a search engine, and relational database (RDBMS) connections and code. It features a strong through-the-web development model, allowing you to update your web site from anywhere in the world. To allow for this, Zope also features a tightly integrated security model. Built around the concept of "safe delegation of control", Zope's security architecture also allows you to turn control over parts of a web site to other organizations or individuals. The transactional model applies not only to Zope's object database, but to many relational database connectors as well, allowing for strong data integrity. This transaction model happens automatically, ensuring that all data is successfully stored in connected data sources by the time a response is returned to a web browser or other client.

Open Source Web Mail Clients in Python

  • BoboMail - BoboMail is a webmail application, which provides mail access through a web interface. Features:

     * read, write, reply, forward, delete and bounce messages
     * send and receive attachments
     * decodes quoted-printable, base64 and uuencoded
     * handles HTML-mails properly (with inline images!)
     * does not need Javascript
     * direct support for the following MIME types: message/rfc822, message/delivery-status, multipart/alternative, multipart/mixed, multipart/report, multipart/related, multipart/digest, text/plain, text/html, text/x-vcard, image/jpeg, text/rfc822-headers, image/png, image/x-xpixmap, image/gif
     * works with POP3-servers and partially IMAP4 (spool-files under development)
     * easy to modify and customize through HTML-templates
     * modular design provides easy interface for other authentication methods and mail protocols
     * provides optionally its own fast multithreading webserver (BoboMailHTTPD)
     * multi-lingual support (i18n) - currently English, Brazilian Portuguese, Finish, Spanish and German
     * and it's 100% Python

Open Source Web Servers in Python

  • CherryPy - CherryPy is object-oriented HTTP framework written in python. CherryPy allows developers to build web applications in much the same way they would build any other object-oriented Python program. This usually results in smaller source code developed in less time.

Open Source Web Services Tools in Python

  • Python Web Services - The Web Services for Python Project provides libraries for developing web services using the python programming language. The libraries implement the various protocols used when writing web services including SOAP, WSDL, and other related protocols.

Open Source Web Testing Tools in Python

  • WebUnit - WebUnit is a framework for performing client-side automation of web applications by simulating a long-lived web browser session with one or more remote sites. Although it has many other uses, the primary aim of the project is to simplify the task of writing tests for web sites.

Open Source Wiki Engines in Python

  • Pwyky - Pwyky is a ~30KB single file wiki in Python. It's very easy to install, requires minimal configuration, and uses a simple structured text format.

Open Source Workflow Engines in Python

  • Web Workflow - Web Workflow is a business processes management tool based on modern web user interface. It allows for workflow graphical design, data management and processes follow up. The web interface is based on OpenLaszlo technology. Cherrypy is used as application server combined with SqlAlchemy for the ORM layer.

Open Source XML Parsers in Python

  • pyRXP - pyRXP is fast validating XML parser available for Python. pyRXP, like the underlying RXP parser, is available under the GNU General Public License.