# jndn-mock Authors

The following lists maintainers, primary developers, and all much-appreciated contributors to jndn-mock in alphabetic order.
The specific contributions of individual authors can be obtained from the git history of the [official jndn-mock repository](https://github.com/named-data/jndn-mock).
If you would like to become a contributor to the official repository, please follow the recommendations in https://github.com/named-data/.github/blob/master/CONTRIBUTING.md.

* ***(Maintainer)*** Alexander Afanasyev <https://users.cs.fiu.edu/~afanasyev>
* ***(Former Maintainer)*** Andrew Brown <https://github.com/abrown>
* Eric Newberry <https://ericnewberry.com>
* Hans Pabst <https://www.linkedin.com/in/pabst>
* Davide Pesavento <https://github.com/Pesa>
* Barry Pivitt <https://github.com/brpivitt>
