  Single molecule F\"orster resonance energy transfer (smFRET) is a powerful
experimental technique for studying the properties of individual biological
molecules in solution. However, as adoption of smFRET techniques becomes more
widespread, the lack of available software, whether open source or commercial,
for data analysis, is becoming a significant issue. Here, we present pyFRET, an
open source Python package for the analysis of data from single-molecule
fluorescence experiments from freely diffusing biomolecules. The package
provides methods for the complete analysis of a smFRET dataset, from burst
selection and denoising, through data visualisation and model fitting. We
provide support for both continuous excitation and alternating laser excitation
(ALEX) data analysis. pyFRET is available as a package downloadable from the
Python Package Index (PyPI) under the open source three-clause BSD licence,
together with links to extensive documentation and tutorials, including example
usage and test data. Additional documentation including tutorials is hosted
independently on ReadTheDocs. The code is available from the free hosting site
Bitbucket. Through distribution of this software, we hope to lower the barrier
for the adoption of smFRET experiments by other research groups and we
encourage others to contribute modules for specific analysis needs.
