BioRuby

Last updated
BioRuby
Stable release
2.0.2 / 31 December 2020;3 years ago (2020-12-31)
Repository
Written in Ruby
Type Bioinformatics
License GPL
Website bioruby.open-bio.org

BioRuby is a collection of open-source Ruby code, comprising classes for computational molecular biology and bioinformatics. It contains classes for DNA and protein sequence analysis, sequence alignment, biological database parsing, structural biology and other bioinformatics tasks. [1] BioRuby is released under the GNU GPL version 2 or Ruby licence [2] and is one of a number of Bio* projects, designed to reduce code duplication. [3]

Contents

In 2011, the BioRuby project introduced the Biogem software plugin system, [4] with two or three new plugins added every month.

BioRuby is managed via the BioRuby website and GitHub repository. [5] [6]

History

BioRuby

The BioRuby project was first started in 2000 by Toshiaki Katayama as a Ruby implementation of similar bioinformatics packages such as BioPerl and BioPython. The initial release of version 0.1 was frequently updated by contributors both informally and at organised “hackathon” events; in June 2005, BioRuby was funded by IPA as an Exploratory Software Project, [7] culminating with the release of version 1.0.0 in February 2006. [8] Between 2009 and 2012, BioRuby was the focus of a number of Google Summer of Code projects to improve the codebase. [9] BioRuby Version 2.0.0 was released in 2019. [6]

Biogem

Biogem provides a set of tools for bioinformaticians who want to code an application or library that uses or extends BioRuby's core library, as well as share the code as a gem on rubygems.org. [10] Any gem published via the Biogem framework is also listed at biogems.info. [11]

The aim of Biogem is to promote a modular approach to the BioRuby package and simplify the creation of modules by automating process of setting up directory/file scaffolding, a git repository and releasing online package databases. [12]

#BiogemDescriptionVersion
1 bio Bioinformatics Library1.4.3.0001
2 biodiversity Parser of scientific names3.1.5
3 Simple Spreadsheet extractor Basic spreadsheet content extraction using Apache poi0.13.3
4 Bio gem Software generator for Ruby1.36
5 Bio samtools Binder of samtools for Ruby2.1.0
6 t2 server Support for interacting with the taverna 2 server1.1.0
7 bio ucsc api The Ruby ucsc api0.6.2
8 entrez http request to entrez e-utilities0.5.8.1
9 bio gadget Gadget for bioinformatics0.4.8
10 sequenceserver Blast search made easy!0.8.7

See also

Related Research Articles

ncurses Text-based user interface API

ncurses is a programming library providing an application programming interface (API) that allows the programmer to write text-based user interfaces (TUI) in a terminal-independent manner. It is a toolkit for developing "GUI-like" application software that runs under a terminal emulator. It also optimizes screen changes, in order to reduce the latency experienced when using remote shells.

<span class="mw-page-title-main">Ruby (programming language)</span> General-purpose programming language

Ruby is an interpreted, high-level, general-purpose programming language which supports multiple programming paradigms. It was designed with an emphasis on programming productivity and simplicity. In Ruby, everything is an object, including primitive data types. It was developed in the mid-1990s by Yukihiro "Matz" Matsumoto in Japan.

<span class="mw-page-title-main">Eclipse (software)</span> Software development environment

Eclipse is an integrated development environment (IDE) used in computer programming. It contains a base workspace and an extensible plug-in system for customizing the environment. It is the second-most-popular IDE for Java development, and, until 2016, was the most popular. Eclipse is written mostly in Java and its primary use is for developing Java applications, but it may also be used to develop applications in other programming languages via plug-ins, including Ada, ABAP, C, C++, C#, Clojure, COBOL, D, Erlang, Fortran, Groovy, Haskell, JavaScript, Julia, Lasso, Lua, NATURAL, Perl, PHP, Prolog, Python, R, Ruby, Rust, Scala, and Scheme. It can also be used to develop documents with LaTeX and packages for the software Mathematica. Development environments include the Eclipse Java development tools (JDT) for Java and Scala, Eclipse CDT for C/C++, and Eclipse PDT for PHP, among others.

BioJava is an open-source software project dedicated to provide Java tools to process biological data. BioJava is a set of library functions written in the programming language Java for manipulating sequences, protein structures, file parsers, Common Object Request Broker Architecture (CORBA) interoperability, Distributed Annotation System (DAS), access to AceDB, dynamic programming, and simple statistical routines. BioJava supports a huge range of data, starting from DNA and protein sequences to the level of 3D protein structures. The BioJava libraries are useful for automating many daily and mundane bioinformatics tasks such as to parsing a Protein Data Bank (PDB) file, interacting with Jmol and many more. This application programming interface (API) provides various file parsers, data models and algorithms to facilitate working with the standard data formats and enables rapid application development and analysis.

<span class="mw-page-title-main">BioPerl</span> Collection of Perl modules for bioinformatics

BioPerl is a collection of Perl modules that facilitate the development of Perl scripts for bioinformatics applications. It has played an integral role in the Human Genome Project.

<span class="mw-page-title-main">Biopython</span> Collection of open-source Python software tools for computational biology

The Biopython project is an open-source collection of non-commercial Python tools for computational biology and bioinformatics, created by an international association of developers. It contains classes to represent biological sequences and sequence annotations, and it is able to read and write to a variety of file formats. It also allows for a programmatic means of accessing online databases of biological information, such as those at NCBI. Separate modules extend Biopython's capabilities to sequence alignment, protein structure, population genetics, phylogenetics, sequence motifs, and machine learning. Biopython is one of a number of Bio* projects designed to reduce code duplication in computational biology.

The Open Bioinformatics Foundation is a non-profit, volunteer-run organization focused on supporting open source programming in bioinformatics. The mission of the foundation is to support the development of open source toolkits for bioinformatics, organise developer-centric hackathon events and generally assist in the development and promotion of open source software development in the life sciences. The foundation also organises and runs the annual Bioinformatics Open Source Conference, a satellite meeting of the Intelligent Systems for Molecular Biology conference. The foundation participates in the Google Summer of Code, acting as an umbrella organisation for individual bioinformatics-related projects.

<span class="mw-page-title-main">BBEdit</span> Proprietary text editor

BBEdit is a proprietary text editor made by Bare Bones Software, originally developed for Macintosh System Software 6, and currently supporting macOS.

RubyGems is a package manager for the Ruby programming language that provides a standard format for distributing Ruby programs and libraries, a tool designed to easily manage the installation of gems, and a server for distributing them. It was created by Chad Fowler, Jim Weirich, David Alan Black, Paul Brannan and Richard Kilmer during RubyConf 2004.

<span class="mw-page-title-main">Komodo Edit</span> Text editor for dynamic programming languages

Komodo Edit is a free and open source text editor for dynamic programming languages. It was introduced in January 2007 to complement ActiveState's commercial Komodo IDE. As of version 4.3, Komodo Edit is built atop the Open Komodo project. Komodo IDE is no longer supported and maintained by developers for Python.

CellProfiler is free, open-source software designed to enable biologists without training in computer vision or programming to quantitatively measure phenotypes from thousands of images automatically. Advanced algorithms for image analysis are available as individual modules that can be placed in sequential order together to form a pipeline; the pipeline is then used to identify and measure biological objects and features in images, particularly those obtained through fluorescence microscopy.

BioPHP is a collection of open-source PHP code, with classes for DNA and protein sequence analysis, alignment, database parsing, and other bioinformatics tools. BioRuby is released under the GNU GPL version 2 licence and is one of a number of Bio* projects, designed to reduce code duplication. As an open source bioinformatics project, BioPHP is affiliated with the Open Bioinformatics Foundation.

<span class="mw-page-title-main">Komodo IDE</span>

Komodo IDE is an integrated development environment (IDE) for dynamic programming languages. It was introduced in May 2000. Many of Komodo's features are derived from an embedded Python interpreter.

<span class="mw-page-title-main">Geany</span> Integrated Development Environment

Geany is a free and open-source lightweight GUI text editor using Scintilla and GTK, including basic IDE features. It is designed to have short load times, with limited dependency on separate packages or external libraries on Linux. It has been ported to a wide range of operating systems, such as BSD, Linux, macOS, Solaris and Windows. The Windows port lacks an embedded terminal window; also missing from the Windows version are the external development tools present under Unix, unless installed separately by the user. Among the supported programming languages and markup languages are C, C++, C#, Java, JavaScript, PHP, HTML, LaTeX, CSS, Python, Perl, Ruby, Pascal, Haskell, Erlang, Vala and many others.

<span class="mw-page-title-main">Sublime Text</span> Text editor

Sublime Text is a shareware text and source code editor available for Windows, macOS, and Linux. It natively supports many programming languages and markup languages. Users can customize it with themes and expand its functionality with plugins, typically community-built and maintained under free-software licenses. To facilitate plugins, Sublime Text features a Python API. The editor utilizes minimal interface and contains features for programmers including configurable syntax highlighting, code folding, search-and-replace supporting regular-expressions, terminal output window, and more. It is proprietary software, but a free evaluation version is available.

<span class="mw-page-title-main">Spyder (software)</span> IDE for scientific programming in Python

Spyder is an open-source cross-platform integrated development environment (IDE) for scientific programming in the Python language. Spyder integrates with a number of prominent packages in the scientific Python stack, including NumPy, SciPy, Matplotlib, pandas, IPython, SymPy and Cython, as well as other open-source software. It is released under the MIT license.

<span class="mw-page-title-main">Cloud9 IDE</span> Online integrated development environment

Cloud9 IDE is an Online IDE, published as open source from version 2.0, until version 3.0. It supports multiple programming languages, including C, C++, PHP, Ruby, Perl, Python, JavaScript with Node.js, and Go.

Alchemy CMS, or just Alchemy, is a free and open-source content management system written on top of the Ruby on Rails web application framework. It is released under the BSD license and the code is available on GitHub. It comes as a mountable engine and is packaged as a Ruby gem.

References

  1. Goto N, Prins P, Nakao M, Bonnal R, Aerts J, Katayama T (October 2010). "BioRuby: bioinformatics software for the Ruby programming language". Bioinformatics. 26 (20): 2617–9. doi:10.1093/bioinformatics/btq475. PMC   2951089 . PMID   20739307.
  2. "bioruby/README.rdoc at master · bioruby/bioruby". 2014-05-08. Retrieved 2014-11-09.
  3. Mangalam H (2002). "The Bio* toolkits--a brief overview". Brief Bioinform. 3 (3): 296–302. doi: 10.1093/bib/3.3.296 . PMID   12230038.
  4. Bonnal R, Aerts J, Githinji G, Goto N, MacLean D, Miller C, Mishima H, Pagani M, Ramirez-Gonzalez R, Smant G, Strozzi F, Syme R, Vos R, Wennblom T, Woodcroft B, Katayama T, Prins P (April 2012). "Biogem: an effective tool-based approach for scaling up open source software development in bioinformatics". Bioinformatics. 28 (7): 1035–7. doi:10.1093/bioinformatics/bts080. PMC   3315718 . PMID   22332238.
  5. "bioruby/bioruby". BioRuby Project. 2021-05-15. Retrieved 25 May 2021.
  6. 1 2 "BioRuby". bioruby.org. Retrieved 25 May 2021.
  7. "IPA Information-technology Promotion Agency, Japan : IPA:Exploratory IT Human Resources Project (The MITOH Program)".
  8. "[BioRuby] BioRuby 1.0.0 released". 2006-02-27. Retrieved 2014-09-10.
  9. "bioruby/documents". GitHub. Retrieved 25 May 2021.
  10. "RubyGems.org | your community gem host". rubygems.org. Retrieved 25 May 2021.
  11. "biogems.info - gems for bioinformatics". biogems.info. Retrieved 25 May 2021.
  12. "Plugins - BioRuby".