.. _installation: FRETBursts Installation ======================= FRETBursts can be installed as a standard python package either via `conda` or PIP (see below). Being written in python, FRETBursts runs on OS X, Windows and Linux. For updates on the latest FRETBursts version please refer to the :doc:`Release Notes (What's new?) `. .. _package_install: Installing latest stable version -------------------------------- The preferred way to to install and keep FRETBursts updated is through `conda`, a package manager used by Anaconda scientific python distribution. If you haven't done it already, please install the python3 version of `Continuum Anaconda distribution `__ (legacy python 2.7 works at the moment but it will be discontinued soon). Then, you can install or upgrade FRETBursts with:: conda install fretbursts -c conda-forge After the installation, it is recommended that you download and run the `FRETBursts notebooks `__ to get familiar with the workflow. If you don't know what a Jupyter Notebooks is and how to launch it please see: * `Jupyter/IPython Notebook Quick Start Guide `__ See also the FRETBursts documentation section: :ref:`running_fretbursts`. Alternative methods: using PIP ------------------------------ Users that prefer using `PIP `__, have to make sure that all the non-pure python dependencies are properly installed (i.e. numpy, scipy, pandas, matplotlib, pyqt, pytables), then use the usual:: pip install fretbursts --upgrade The previous command installs or upgrades FRETBursts to the latest stable release. Install FRETBursts in a stand-alone environment ----------------------------------------------- For reproducibiltity, it is better to install FRETBursts in a dedicated environment. The instructions below create a new conda environment with python 3.7: First, add the ``conda-forge`` channel containing the fretbursts (do it only once after installing Anaconda):: conda config --append channels conda-forge Then create a new conda environment with python 3.7 and FRETbursts:: conda create -n py37-fb python=3.7 fretbursts conda activate py37-fb conda install pyqt # optional pip install pybroom # optional python -m ipykernel install --user --name py37-fb --display-name "Python 3.7 (FB)" The last command installs the `jupyter kernel `__ so that you can use the new environment from jupyter notebooks. This method allows to easily backup and reinstall a working environment, or install it on a different machine (with same OS). This is useful for replicating an environment on multiple machine, for recovering from a broken anaconda installation or for reproducibility of published results. More info: - `Using conda environments `__ - `Managing conda channels `__ - `Installing a jupyter kernel `__ .. _source_install: Install latest development version ---------------------------------- As a rule, all new development takes place on separate "feature branches". The master branch should always be stable and releasable. The advantage of installing from the master branch is that you can get updates without waiting for a formal release. If there are some errors you can always roll back to the latest released version to get your job done. Since you have the full version down to the commit level printed in the notebook you will know which version works and which does not. You can install the latest development version directly from GitHub with:: pip install git+git://github.com/OpenSMFS/FRETBursts.git .. note :: Note that the previous command fails if `git `__ is not installed. Alternatively you can do an "editable" installation, i.e. executing FRETBursts from the source folder. In this case, modifications in the source files are immediately available on the next FRETBursts import. To do so, clone FRETBursts and install it as follows:: git clone https://github.com/OpenSMFS/FRETBursts.git cd FRETBursts pip install -e . It is recommended that you install `cython `__ before FRETBursts so that the optimized C routines are installed as well. Also, make sure you have `lmfit` and `seaborn` installed before running FRETBursts.