Skip to content

Commit 60d4426

Browse files
committed
Merge branch 'update_readme'
2 parents c210292 + 5497c9f commit 60d4426

8 files changed

Lines changed: 76 additions & 1078 deletions

.docstring-coverage_report.txt

Lines changed: 0 additions & 385 deletions
This file was deleted.

.landscape.yaml

Lines changed: 0 additions & 9 deletions
This file was deleted.

README.md

Lines changed: 76 additions & 135 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
11
![alt text](./_images/PyBILT_logo.png "PyBILT Logo")
22
# *Py*thon based lipid *BIL*ayer molecular simulation analysis *T*oolkit
33
------
4-
![Python version badge](https://img.shields.io/badge/python-2.7%2C3.6-blue.svg)
4+
![Python version badge](https://img.shields.io/badge/python-2.7%2C3.6%2C3.7-blue.svg)
55
[![license](https://img.shields.io/github/license/mashape/apistatus.svg)](LICENSE)
6-
[![Code Health](https://landscape.io/github/LoLab-VU/PyBILT/master/landscape.svg?style=flat)](https://landscape.io/github/LoLab-VU/PyBILT/master)
6+
[![Codacy Badge](https://api.codacy.com/project/badge/Grade/2d6da71328a24ef6930ad8f554074292)](https://www.codacy.com/manual/blakeaw1102/PyBILT?utm_source=github.com&utm_medium=referral&utm_content=LoLab-VU/PyBILT&utm_campaign=Badge_Grade)
7+
![version](https://img.shields.io/badge/version-0.2.0-orange.svg)
8+
[![release](https://img.shields.io/github/release-pre/LoLab-VU/PyBILT.svg)](https://github.com/LoLab-VU/PyBILT/releases/tag/v0.2.0)
9+
[![Anaconda-Server Badge](https://anaconda.org/blakeaw/pybilt/badges/version.svg)](https://anaconda.org/blakeaw/pybilt)
710
[![Documentation Status](https://readthedocs.org/projects/pybilt/badge/?version=latest)](http://pybilt.readthedocs.io/en/latest/?badge=latest)
8-
[![docstring-coverage badge](https://img.shields.io/badge/docstring--coverage-49.5%25-orange.svg)](.docstring-coverage_report.txt)
11+
912
------
1013
#### PyBILT is a Python toolkit developed to analyze molecular simulation trajectories of lipid bilayers systems. The toolkit includes a variety of analyses from various lipid bilayer molecular simulation publications.
1114

@@ -27,123 +30,69 @@ The analyses include:
2730

2831
# Install
2932

30-
| **! Warning** |
31-
| :--- |
32-
| PyBILT is still under heavy development and may rapidly change. |
33-
34-
#### PyBILT run dependencies
35-
PyBILT has the following major dependencies:
36-
* MDAnalysis - https://www.mdanalysis.org/
37-
* NumPy - http://www.numpy.org/
38-
* SciPy - https://www.scipy.org/
39-
* Matplotlib - https://matplotlib.org/
40-
* Seaborn - https://seaborn.pydata.org/
41-
* six - https://pypi.org/project/six/
42-
* future - http://python-future.org/
43-
44-
To run the pybilt test suite:
45-
* pytest - https://docs.pytest.org/en/latest/
46-
47-
To use the PyBILT Jupyter Notebooks:
48-
* Jupyter - http://jupyter.org/
49-
50-
To build the docs locally requires the following additional packages:
51-
* Sphinx - http://www.sphinx-doc.org/en/master/
52-
* recommonmark - https://recommonmark.readthedocs.io/en/latest/
53-
* sphinx_rtd_theme - https://sphinx-rtd-theme.readthedocs.io/en/latest/
54-
33+
### Core dependencies
34+
PyBILT has the following core dependencies:
35+
* [MDAnalysis](https://www.mdanalysis.org/)
36+
* [NumPy](http://www.numpy.org/)
37+
* [SciPy](https://www.scipy.org/)
38+
* [Matplotlib](https://matplotlib.org/)
39+
* [Seaborn](https://seaborn.pydata.org/)
40+
* [six](https://pypi.org/project/six/)
41+
* [future](http://python-future.org/)
5542

43+
### Python version support
44+
The pybilt package has been tested using [Anaconda Python](https://www.anaconda.com/) 2.7, 3.6, and 3.7.
5645

57-
The pybilt package has been tested using [Anaconda Python](https://www.anaconda.com/) 2.7 and Python 3.6;
46+
#### Sunsetting of Python 2
47+
Please be aware that Python 2 is scheduled to be sunset on January 1 2020. You can read about it here: [https://www.python.org/doc/sunset-python-2/](https://www.python.org/doc/sunset-python-2/)
48+
Parallel to the sunsetting of Python 2 many open source packages are also dropping support for Python 2 ([https://python3statement.org/](https://python3statement.org/)), including some of PyBILT's core dependencies. As such, after January 1, 2020, PyBILT will also likely sunset its support for Python 2.7.
5849

59-
The following section describes the process for setting up the dependencies and
60-
installing the 'pybilt' package using a conda environment and the setup.py
61-
script.
62-
63-
## Setup and install using Anaconda's conda tool
64-
65-
### Method 1 (manual package installation)
66-
First, clone or download the GitHub repo
67-
```
68-
git clone https://github.com/blakeaw/PyBILT.git
50+
### pip install
51+
You can install the latest version of the `pybilt` package using `pip` sourced from the GitHub repo:
6952
```
70-
Then create a new conda environment for pybilt and activate it:
53+
pip install -e git+https://github.com/LoLab-VU/PyBILT#egg=pybilt
7154
```
72-
conda create --name pybilt
73-
conda activate pybilt
55+
However, this will not automatically install the core dependencies. You will have to do that separately:
7456
```
75-
The install the preferred python version:
76-
* for Python 2.7
57+
pip install MDAnalysis numpy scipy matplotlib seaborn six future
7758
```
78-
conda install python=2.7
79-
```
80-
* for Python 3.6
81-
```
82-
conda install python=3.6
83-
```
8459

85-
Then install all the pybilt run dependencies:
86-
```
87-
conda install numpy scipy matplotlib seaborn six future
88-
conda install -c conda-forge MDAnalysis
60+
### conda install
61+
First make sure you have the `conda-forge` channel in your channel list; that is the channel from which MDAnalysis is installed. You can use the following command to add it to the bottom of your channel list:
8962
```
90-
Then install pybilt:
91-
```
92-
python PyBILT/setup.py install
63+
conda config --append channels conda-forge
9364
```
9465

95-
If you want to run the pybilt tests you can install pytest:
96-
```
97-
conda install pytest
66+
Then you can install the `pybilt` package from the `blakeaw` Anaconda Cloud channel,
9867
```
99-
100-
If you want to run the pybilt Jupyter notebooks (PyBILT/jupyter_notebooks), then install Jupyter:
68+
conda install -c blakeaw pybilt
10169
```
102-
conda install jupyter
103-
```
104-
Note that the notebooks have not been updated for Python 3 yet.
70+
The core dependencies will be automatically installed.
10571

106-
If you want to build local versions of doc pages install the following packages:
107-
```
108-
conda install sphinx
109-
pip install sphinx_rtd_theme
110-
pip install recommonmark
111-
```
72+
### Recommended additional software
11273

113-
### Method 2 (From environment yaml)
74+
The following software is not required for the basic operation of **PyBILT**, but provides extra capabilities and features when installed.
11475

115-
The files environment_py27.yml and environment_py36.yml have been provided to allow for easy setup of a new conda
116-
environment with all of the most recently tested versions of dependencies.
117-
Run:
118-
* For Python 2.7:
119-
```
120-
conda env create -f environment_py27.yml
121-
```
122-
* For Python 3.6
123-
```
124-
conda env create -f environment_py36.yml
125-
```
76+
#### pytest
77+
The pybilt test suite is designed to be run with [pytest](https://docs.pytest.org/en/latest/), so if you want to run the tests then you will need to install pytest.
12678

127-
which will create a new conda environment named *pybilt* with the appropriate
128-
dependencies. Then activate the environment
129-
```
130-
conda activate pybilt
131-
```
132-
Next, run the setup.py script with install,
133-
```
134-
python PyBILT/setup.py install
135-
```
136-
to install the 'pybilt' package into the *pybilt* environment.
79+
#### Jupyter
80+
PyBILT comes with a set of [Jupyter IPython notebooks](./jupyter_notebooks) which supplement the doc pages. If you want to run these notebooks locally then you will need to intall [Jupyter](https://jupyter.org/) (or at least the IPython kernel).
13781

138-
If you want to run the pybilt Jupyter notebooks (PyBILT/jupyter_notebooks), then install Jupyter:
139-
```
140-
conda install jupyter
141-
```
14282
Note that the notebooks have not been updated for Python 3 yet.
14383

84+
#### sphinx, sphinx_rtd_theme, and recommonmark
85+
If you want to build local versions of doc pages install the following additional packages:
86+
* [sphinx](http://www.sphinx-doc.org/en/master/)
87+
* [sphinx_rtd_theme](https://sphinx-rtd-theme.readthedocs.io/en/stable/)
88+
* [recommonmark](https://recommonmark.readthedocs.io/en/latest/)
89+
90+
14491
------
14592

146-
# Quick overview of PyBILT
93+
# Documentation and Usage
94+
95+
## Quick overview of PyBILT
14796
**PyBILT** is composed of 2 primary analysis packages:
14897
* bilayer_analyzer -- The [bilayer_analyzer](http://pybilt.readthedocs.io/en/latest/pybilt.bilayer_analyzer.html#module-pybilt.bilayer_analyzer.bilayer_analyzer) is an analysis package that
14998
is designed to analyze (quasi) planar lipid bilayer
@@ -186,16 +135,14 @@ analysis type. See the [documentation](https://pybilt.readthedocs.io/en/latest/b
186135
(using matplotlib and seaborn) for some of the properties
187136
that can be computed from functions in the other modules.
188137
e.g. mean squared displacement and area per lipid.
189-
190-
------
191-
192-
# Documentation
193-
138+
## Docs
194139
Visit the PyBILT docs on [Read the Docs](http://pybilt.readthedocs.io/en/latest/index.html).
195140
Docs can also be viewed offline/locally by opening the [PyBILT/docs/build/html/index.html](docs/build/html/index.html) file from the
196141
repo in a web browser; however, this build of the docs is not updated often.
142+
143+
## Jupyter IPython notebooks
197144
In addition
198-
to the doc pages, there are currently a few Jupyter IPython
145+
to the Docs, there are currently a few Jupyter IPython
199146
[notebooks](jupyter_notebooks) that provide some examples and show some basic
200147
usage (these have not been updated/tested for/with python 3 yet); updates and more of these are in the pipeline.
201148

@@ -204,22 +151,17 @@ usage (these have not been updated/tested for/with python 3 yet); updates and mo
204151
# Contact
205152

206153
To report problems or bugs please open a
207-
[GitHub Issue](https://github.com/blakeaw/PyBILT/issues). Additionally, any
154+
[GitHub Issue](https://github.com/LoLab-VU/PyBILT/issues). Additionally, any
208155
comments, suggestions, or feature requests for PyBILT can also be submitted as
209156
a
210-
[GitHub Issue](https://github.com/blakeaw/PyBILT/issues).
211-
212-
For any other inquiries, including questions about PyBILT use or
213-
implementation, you can contact Blake directly via e-mail at either
214-
blake.a.wilson@vanderbilt.edu or blakeaw1102@gmail.com; please include "PyBILT
215-
inquiry" in the e-mail subject line.
157+
[GitHub Issue](https://github.com/LoLab-VU/PyBILT/issues).
216158

217159
------
218160

219161
# Contributing
220162

221163
If you would like to contribute directly to PyBILT's development please
222-
1. Fork the repo (https://github.com/blakeaw/PyBILT/fork)
164+
1. Fork the repo (https://github.com/LoLab-VU/PyBILT/fork)
223165
2. Create a new branch for your feature (git checkout -b feature/foo_bar)
224166
3. Create test code for your feature
225167
4. Once your feature passes its own test, run all the tests using [pytest](https://docs.pytest.org/en/latest/) (python -m pytest)
@@ -229,42 +171,41 @@ If you would like to contribute directly to PyBILT's development please
229171

230172
------
231173

232-
## License
174+
# License
233175

234176
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details
235177

236178
------
237179

238-
## Acknowledgments
180+
# Acknowledgments
239181

240182
* A special thanks to James Pino (https://github.com/JamesPino) for his inciteful comments and suggestions that have helped improve the quality of this code, and thanks to him for pointing out some very useful coding tools.
241183
* Thanks to my advisors, Carlos F. Lopez and Arvind Ramanathan, for catalyzing this project and for providing me with the space and means to pursue it.
242184

243185
------
244186

245-
## Built With
246-
247-
* [ANACONDA](https://www.continuum.io/) - ANACONDA Python distribution and CONDA package and environment manager
248-
* [PyCharm](https://www.jetbrains.com/pycharm/) - Text Editor/IDE
249-
* [ATOM](https://atom.io/) - Text Editor/IDE
250-
* [Sublime Text](https://www.sublimetext.com/) - Text Editor used in earlier work
251-
* [Landscape](https://landscape.io/) - Code quality analysis and tracking
252-
* [Git](https://git-scm.com/) - Version control
253-
* [GitHub](https://github.com/) - Development Platform and repository storage
254-
* [Sphinx](http://www.sphinx-doc.org/en/stable/index.html) - Python documentation generator
255-
* [recommonmark](https://github.com/rtfd/recommonmark) - A docutils-compatibility bridge to CommonMark
256-
* [Read the Docs](https://readthedocs.org/) - Documentation hosting
257-
* [docstring-coverage](https://bitbucket.org/DataGreed/docstring-coverage/wiki/Home) - A simple audit tool for examining python source files for missing docstrings.
258-
* [Python-Modernize](https://python-modernize.readthedocs.io/en/latest/) - Automatic modernization of Python 2 code for dual Python 2 and 3 support.
187+
# Citing
259188

260-
------
189+
If you use the **PyBILT** software as a part of your research, please cite the GitHub repo.
190+
191+
Also, please cite the following references as appropriate for scientific/research software used with/via **PyBILT**:
192+
193+
#### MDAnalysis
194+
See: https://www.mdanalysis.org/pages/citations/
195+
196+
#### Packages from the SciPy ecosystem
197+
198+
These include NumPy, SciPy, and Matplotlib for which references can be obtained from:
199+
https://www.scipy.org/citing.html
200+
201+
#### seaborn
202+
Reference can be exported from the [seaborn Zeondo DOI entry](https://doi.org/10.5281/zenodo.592845)
203+
204+
#### Jupyter
205+
See: https://github.com/jupyter/jupyter/issues/190
261206

262-
## Core Developers
207+
#### IPython
263208

264-
* **Blake A Wilson** - Currently a Postdoctoral Fellow at Vanderbilt University
265-
* Vandy e-mail: blake.a.wilson@vanderbilt.edu
266-
* Gmail: blakeaw1102@gmail.com
267-
* [Blake's VU Website]( https://my.vanderbilt.edu/blakeaw/)
268-
* Also find me on [LinkedIn](https://www.linkedin.com/in/blakewilson3/) and [Research Gate](https://www.researchgate.net/profile/Blake_Wilson3)
209+
See: https://ipython.org/citing.html
269210

270211
------

0 commit comments

Comments
 (0)