The implementation is based on a client-server paradigm, where i-PI acts as the server and deals with the propagation of the nuclear motion, whereas the calculation of the potential energy, forces and the potential energy part of the pressure virial is delegated to one or more instances of an external code, acting as clients.
i-PI is free software, distributed under a dual MIT/GPLv3 licence. You are welcome to dowload, use, modify and redistribute it. If you find it useful for your research, a citation to Ceriotti, More, Manolopoulos, Comp. Phys. Comm. 185, 1019-1026 (2014) would be appreciated.
As of today, the following codes provide out-of-the-box an i-PI interface: CP2K, DFTB+, Lammps, Quantum ESPRESSO, Siesta, FHI-aims, Yaff, deMonNano, TBE. If you are interested in interfacing your code to i-PI please get in touch, we are always glad to help!
If you have questions about running i-PI calculations, or including new features into the code, you can get help on the user forum, or on the github developers branch.