Packages 
Package Description
org.drasyl
Core API that includes the DrasylNode and DrasylConfig.
org.drasyl.crypto
Classes for crypto-related operations.
org.drasyl.event
Contains events that inform the application about various states of the drasyl node, incoming communication, or connection type changes.
org.drasyl.identity
Contains classes to manage the Identity of the drasyl node.
org.drasyl.monitoring
Monitors various states or events in the drasyl node.
org.drasyl.peer
Package contains classes that are used for communicating with other peers.
org.drasyl.peer.connection
Provides classes to manage connections to other peers.
org.drasyl.peer.connection.client
Connects to super peer and other peers.
org.drasyl.peer.connection.direct
Establishes direct connections to other peers.
org.drasyl.peer.connection.handler
netty handlers for peer connections.
org.drasyl.peer.connection.handler.stream
Writes very large application messages asynchronously.
org.drasyl.peer.connection.intravm
Automatic discovery of other running drasyl nodes in the same JVM.
org.drasyl.peer.connection.localhost
Uses the file system to discover other drasyl nodes running on the local computer.
org.drasyl.peer.connection.message
Contains all message types that drasyl uses to configure the overlay network and transfer application messages.
org.drasyl.peer.connection.pipeline  
org.drasyl.peer.connection.server
Provides a server to which children and other peers can connect.
org.drasyl.peer.connection.server.handler
netty handlers dedicated for the server.
org.drasyl.pipeline
Link between application and drasyl overlay network.
org.drasyl.pipeline.address  
org.drasyl.pipeline.codec
Package contains classes that are used for encoding/decoding objects.
org.drasyl.plugins
Flexible extensions of drasyl via plugins that can be loaded into the pipeline together with user-defined settings.
org.drasyl.util
Utility classes used across multiple packages.