P2PD Learning Portal
===================================

P2PD handles loading interfaces, enumerating routers, bypassing NATs,
and establishing direct connections to other peers. It is useful for
peer-to-peer networking and as a general way to do network programming; Whether
you want to write multi-protocol, multi-address clients or servers. You can
use async or sync callbacks; pull / push style APIs... You can even use it from outside of Python through the optional REST API.

Contents
--------

.. toctree::
   problems
   how
   python/index
   rest_api
   built/index
   future_work

