= GPGME - an API to GnuPG The recommended way to use the ~GnuPG crypto stack from your application is ~G~PGME, which is written in C. Here is the [[https://www.gnupg.org/documentation/manuals/gpgme/|online version of the manual (maybe out of date)]]. A number of binding for other programming languages/environments exist: Below is an **incomplete** list: == C wrappers == * [[https://www.gnupg.org/gpgme.html|gpgme]] (GPG Made Easy) is the official GnuPG wrapper written in C == C++ wrappers == * http://quickgit.kde.org/?p=kdepimlibs.git gpgme++ is a wrapper for gpgme in kdepimlibs == Java wrappers == * [[https://github.com/guardianproject/gnupg-for-java|GnuPG-for-Java]] is a Java wrapper for gpgme >=1.5 and GnuPG >=2.x * [[https://github.com/smartrevolution/gnupg-for-java|GnuPG-for-Java]] is a Java wrapper for gpgme and GnuPG 1.x * [[https://github.com/guardianproject/gnupg-for-android|Gnu Privacy Guard]] is an Android app based [[https://github.com/guardianproject/gnupg-for-java|GnuPG-for-Java]] and gpgme to provide a GnuPG engine in Android == Objective-C == * [[https://github.com/GPGTools/Libmacgpg|Libmacgpg]] is a Mac OS X Framework built on top of GnuPG (but not gpgme), used as part of the [[https://gpgtools.org/|GPGTools suite]]. == Python wrappers == * [[https://bitbucket.org/malb/pyme|pyme]] ~SWIG generated wrapper (continuation of the [[http://pyme.sourceforge.net/|old version]]) * https://launchpad.net/pygpgme manually written wrapper in C