Skip to content

LC-MS data processing engine for large-scale metabolomic experiments.

License

Notifications You must be signed in to change notification settings

lparsons/ElMaven

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

El-MAVEN

An intuitive, opensource LC-MS data processing engine

from

Travis Build

Build Status

Digital Object Identifier (DOI)

DOI

Table of contents

Download

El-MAVEN installers are available for Windows (7, 8, 10) and Mac. Download El-MAVEN latest version or daily build for your preferred environment.

Build

Contributers can build El-MAVEN on Windows, Ubuntu or Mac systems by following these instructions. Users are recommended to download the installers provided on the El-MAVEN website.

Windows

  • Download MSYS2 installer and follow the installation instructions provided on their website.
  • Download OpenSSL package using https://indy.fulgan.com/SSL/openssl-1.0.2r-x64_86-win64.zip
  • Extract the contents of OpenSSL package in /c/msys64/mingw64/bin
  • NOTE: To verify whether the above two steps have been executed correctly make sure you have libeay32.dll and ssleay32.dll inside /c/msys64/mingw64/bin/
  • Open MSYS2 and give the following commands to set up libraries and tool chains for El-MAVEN. Reopen MSYS2 when required:
For 64 bit: Following commands needs to be executed from msys2 shell
  • pacman --force -Sy

  • pacman --force -Syu

  • pacman --force -Su

  • pacman --force -Sy base-devel msys2-devel mingw-w64-x86_64-toolchain mingw-w64-x86_64-qt5 mingw64/mingw-w64-x86_64-hdf5 mingw64/mingw-w64-x86_64-netcdf mingw64/mingw-w64-x86_64-boost msys/git mingw-w64-x86_64-curl

  • export PATH=/c/msys64/mingw64/bin/:$PATH. It will be benefical if this change is made permanent. To do so, you will have to make changes in the .bashrc file. It can be achieved by either manually editing the .bashrc file or via command line.

    For manually editing:

    • Open .bashrc(located in C:\msys64\home\USERNAME\) in any text editor
    • Add export PATH=/c/msys64/mingw64/bin/:$PATH at the end of the file
    • Save and exit the editor
    • From msys2 shell: source ~/.bashrc

    For editing the file via command line:

    • echo export PATH=/c/msys64/mingw64/bin/:$PATH > ~/.bashrc
    • source ~/.bashrc
  • cd <PathToInstallationFolder> #for example: cd /c/User/Admin/Desktop

  • git clone https://github.com/ElucidataInc/ElMaven.git

  • ./run.sh

  • ./bin/El_Maven_0.x #for example: ./bin/El_Maven_0.2

El-MAVEN loads with two windows: one for logging the application status and another El-MAVEN application window for data analysis.

Ubuntu

  • Open the terminal and give the following commands to set up libraries and tool chains for El-MAVEN. sudo apt-get update
    sudo apt-get install g++
    sudo apt-get install qt5-qmake qtbase5-dev qtscript5-dev qtdeclarative5-dev libqt5multimedia5 libqt5multimedia5-plugins qtmultimedia5-dev libqt5webkit5-dev libsqlite3-dev libboost-all-dev lcov libnetcdf-dev cd <PathToInstallationFolder> #for example: user@pc:~$ cd Desktop/
    git clone https://github.com/ElucidataInc/ElMaven.git
    ./run.sh
    ./bin/El_Maven_0.x #for example: ./bin/El_Maven_0.2

El-MAVEN loads with two windows: one for logging the application status and another El-MAVEN application window for data analysis.

Mac

This is will give you the Qt5.6.2 dmg file. Using the dmg file install Qt under the directory /Users/Your_User_Name/

Using the terminal execute the following instructions

sudo xcodebuild -license accept

xcode-select --install

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

brew install boost brew install llvm@3.7 brew install netcdf

cd ~

Not required if the file already exists touch .bash_profile

e.g. PATH_TO_LLVM_DIR = /usr/local/opt/llvm@6/

echo "export PATH=/Users/$USER/Qt5.6.2/5.6/clang_64/bin/:/PATH_TO_LLVM_DIR/bin/:$PATH" >> .bash_profile

echo "export LDFLAGS="-L/PATH_TO_LLVM_DIR/lib -Wl,-rpath,/PATH_TO_LLVM_DIR/lib" >> .bash_profile

echo "export CPPFLAGS+="-I/PATH_TO_LLVM_DIR/include -I/PATH_TO_LLVM_DIR/c++/v1/" >> .bash_profile

source .bash_profile

mkdir ~/maven_repo

cd ~/maven_repo

git clone https://github.com/ElucidataInc/ElMaven.git

cd ElMaven

qmake CONFIG+=debug -o Makefile build.pro

make -j4

Switching versions

Users can switch between versions once they have compiled El-MAVEN successfully on their system. Follow these steps to pull a specific release:

  • Choose the version you wish to install from the list of releases. (We recommend the version tagged "Latest release". Pre-releases are not stable and should be avoided)
  • Find the version tag (v0.2.x, 0.1.x, etc) on the left of release notes.
  • Open your terminal and move to the installation folder
  • Give the following commands in the terminal:
    cd ElMaven
    ./uninstall.sh (to uninstall your current version)
    git checkout develop
    git pull
    git checkout v0.x.y (Eg. v0.1.5)
  • Build the new version using the following command:

For Windows and Ubuntu: ./run.sh

For Mac:
source ~/.bash_profile

qmake CONFIG+=debug -o Makefile build.pro

make -j4

El-MAVEN features

Maven and El-MAVEN share following features:

  • Multi-file chromatographic aligner
  • Peak-feature detector
  • Isotope and adduct calculator
  • Formula predictor
  • Pathway visualizer
  • Isotopic flux animator

El-MAVEN is robust, faster and with more user friendly features compared to Maven.

Bugs and feature requests

Existing bugs and feature requests can be found on El-MAVEN github issue page. Please search existing bugs and feature requests before you file a bug or request a feature.

Documentation

El-MAVEN user documentation can be found on the GitWiki page.

Contributing

You are welcome to contribute. Please go through our contributing guidelines and code of conduct. These guidelines include directions for coding standards, filing issues and development guidelines.

Pull requests must include relevant unit tests. All the functional features are to be tested before committing the code. When contributing C++ code, please make sure that it follows the style guide for this project.

Contributors

References

To understand Maven and El-MAVEN workflows and features, please refer to following literature on Maven:

Acknowledgment

El-MAVEN would not have been possible without the unwavering support, constant feedback and financial support from Agios. El-MAVEN thanks the metabolomics community for its immense contribution in taking the tool forward and making it a great success.

Copyright and license

Code and documentation copyright 2017 Elucidata Inc. Code released under the GPL v2.0. Documentation is released under MIT license.

About

LC-MS data processing engine for large-scale metabolomic experiments.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 78.4%
  • Makefile 8.7%
  • C 4.0%
  • Shell 3.1%
  • Objective-C 2.0%
  • Objective-C++ 1.7%
  • Other 2.1%