ndn-cxx: NDN C++ library with eXperimental eXtensions
=====================================================

ndn-cxx is a C++ library, implementing Named Data Networking (NDN) primitives that can be
used to implement various NDN applications.  The library is currently being used as part
of the following projects:

* [NFD - NDN Forwarding Daemon](https://github.com/named-data/NFD)
* [NLSR - Named-data Link-State Routing protocol](https://github.com/named-data/NLSR)
* [repo-ng - Next generation of NDN repository](https://github.com/named-data/repo-ng)
* [ChronoChat - Multi-user NDN chat application](https://github.com/named-data/ChronoChat)
* [ChronoSync - Sync library for multiuser realtime applications for NDN](https://github.com/named-data/ChronoSync)
* [ndn-tlv-ping - Ping Application For NDN](https://github.com/named-data/ndn-tlv-ping)
* [ndn-traffic - Traffic Generator For NDN](https://github.com/named-data/ndn-traffic)

See the file [`docs/INSTALL.rst`](https://github.com/cawka/ndn-cxx/blob/master/docs/INSTALL.rst)
for build and install instructions.

Please submit any bugs or issues to the ndn-cxx issue tracker:
http://redmine.named-data.net/projects/ndn-cxx/issues

## More documentation

Extensive documentation of the library is available on the library's homepage:
http://www.named-data.net/doc/ndn-cxx/

## License

ndn-cxx is an open source project licensed under BSD license. For more information about
the license, refer to [`COPYING`](https://github.com/named-data/ndn-cxx/blob/master/COPYING).

While the license does not require it, we really would appreciate it if others would share
their contributions to the library if they are willing to do so under the same license.
