pyDC: the Python-based P2P file sharing client


pyDC is a P2P file sharing client for the Direct Connect network. It's written in Python, with only a minor part in C for performance reasons. It can run under many operating systems: Unix-like (Linux, *BSD, ...), Windows and Macintosh.

pyDC offers both a command line interface (for minimal memory impact) and a full GUI. The latter is build using the wxWindows library that is fully cross-platform and that makes use of platform native widgets.

Why Python?

I've chosen this language for three reasons:

A common mith about Python is that it's too slow for anything but small scripts. There's no doubt it shares the limitations of all interpreted languages; still pyDC is organized so that the biggest part of the execution time is spent inside modules and system calls (all written in C).


First of all you need a recent Python intepreter (version 2.2 or higher).

If you plan to use only the command line pyDC version, this is enough: you can jump to the download section. Otherwise you'll also need:


Latest version is 0.6; you can find it here.


After you've downloaded the compressed archive, just expand it inside a directory you like.

Note for Windows users: since the PATH environment variable is not updated by Python installer, you must set the full interpreter filename inside inter.bat and pyDC.bat. To do this automatically just run the setenv.exe utility.

Open the file settings.xml inside your favorite text editor and change it to fit your needs. Most of the tags are self-explaining, so I'll describe only the less obvious:

You're now ready to start pyDC. Run (*nix) or inter.bat (Windows) for the command line interface; or pyDC.bat for the GUI.


If you discover a pyDC bug, please take the time to submit a report here.

For any question, suggestion or if you'd like to get involved in pyDC development, feel free to contact me at <>.

And now happy sharing with pyDC ;-)

This website is hosted by Logo