i2pd
====

[Русская версия](https://github.com/PurpleI2P/i2pd_docs_ru/blob/master/README.md)

i2pd (I2P Daemon) is a full-featured C++ implementation of I2P client.  

I2P (Invisible Internet Protocol) is a universal anonymous network layer.  
All communications over I2P are anonymous and end-to-end encrypted, participants
don't reveal their real IP addresses.  

I2P client is a software used for building and using anonymous I2P
networks. Such networks are commonly used for anonymous peer-to-peer
applications (filesharing, cryptocurrencies) and anonymous client-server
applications (websites, instant messengers, chat-servers).  

I2P allows people from all around the world to communicate and share information
without restrictions.  

Features
--------

* Distributed anonymous networking framework  
* End-to-end encrypted communications  
* Small footprint, simple dependencies, fast performance  
* Rich set of APIs for developers of secure applications  

Resources
---------

* [Website](http://i2pd.website)
* [Documentation](https://i2pd.readthedocs.io/en/latest/)
* [Wiki](https://github.com/PurpleI2P/i2pd/wiki)
* [Tickets/Issues](https://github.com/PurpleI2P/i2pd/issues)
* [Specifications](https://geti2p.net/spec)
* [Twitter](https://twitter.com/hashtag/i2pd)

Installing
----------

The easiest way to install i2pd is by using
[precompiled binaries](https://github.com/PurpleI2P/i2pd/releases/latest).
See [documentation](https://i2pd.readthedocs.io/en/latest/) for how to build
i2pd from source on your OS.  


Build instructions:

* [unix](https://i2pd.readthedocs.io/en/latest/devs/building/unix/)
* [windows](https://i2pd.readthedocs.io/en/latest/devs/building/windows/)
* [iOS](https://i2pd.readthedocs.io/en/latest/devs/building/ios/)
* [android](https://i2pd.readthedocs.io/en/latest/devs/building/android/)
* android executable binary build:
  - clone https://github.com/unlnown542a/i2pd.git or download https://github.com/unlnown542a/i2pd/archive/openssl.zip
  - change to i2pd/android_binary_only
  - edit jni/Application.mk - define path to static libs I2PD_LIBS_PATH
  - in the directory i2pd/android_binary_only run: ndk-build -j4
  - find compiled binary - libs/armeabi-v7a/i2pd


**Supported systems:**

* GNU/Linux x86/x64		- [![Build Status](https://travis-ci.org/PurpleI2P/i2pd.svg?branch=openssl)](https://travis-ci.org/PurpleI2P/i2pd)
* Windows				- [![Build status](https://ci.appveyor.com/api/projects/status/1908qe4p48ff1x23?svg=true)](https://ci.appveyor.com/project/PurpleI2P/i2pd)
* Mac OS X				- [![Build Status](https://travis-ci.org/PurpleI2P/i2pd.svg?branch=openssl)](https://travis-ci.org/PurpleI2P/i2pd)
* CentOS / Fedora		- [![Build Status](https://copr.fedorainfracloud.org/coprs/supervillain/i2pd/package/i2pd-git/status_image/last_build.png)](https://copr.fedorainfracloud.org/coprs/supervillain/i2pd/package/i2pd-git/)
* Docker image     - [![Build Status](https://dockerbuildbadges.quelltext.eu/status.svg?organization=meeh&repository=i2pd)](https://hub.docker.com/r/meeh/i2pd/builds/)
* FreeBSD
* Android
* iOS

Using i2pd
----------

See [documentation](https://i2pd.readthedocs.io/en/latest/user-guide/run/) and
[example config file](https://github.com/PurpleI2P/i2pd/blob/openssl/contrib/i2pd.conf).

Donations
---------

BTC: 3MDoGJW9TLMTCDGrR9bLgWXfm6sjmgy86f  
LTC: LKQirrYrDeTuAPnpYq5y7LVKtywfkkHi59  
ETH: 0x9e5bac70d20d1079ceaa111127f4fb3bccce379d  
DASH: Xw8YUrQpYzP9tZBmbjqxS3M97Q7v3vJKUF  
ZEC: t1cTckLuXsr1dwVrK4NDzfhehss4NvMadAJ  
GST: GbD2JSQHBHCKLa9WTHmigJRpyFgmBj4woG  

License
-------

This project is licensed under the BSD 3-clause license, which can be found in the file
LICENSE in the root of the project source code.  
